testsuites

package
v1.31.1 Latest Latest
Warning

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

Go to latest
Published: Nov 14, 2024 License: Apache-2.0 Imports: 45 Imported by: 0

Documentation

Index

Constants

View Source
const (
	VolumeSnapshotKind = "VolumeSnapshot"
	VolumePVCKind      = "PersistentVolumeClaim"
	APIVersionv1       = "v1"
	SnapshotAPIVersion = "snapshot.storage.k8s.io/" + APIVersionv1
)
View Source
const (
	HostNameLabel = "kubernetes.io/hostname"
)

Variables

View Source
var (
	TestLabel = map[string]string{
				// contains filtered or unexported fields
	}

	TestPodAntiAffinity = v1.Affinity{
		PodAntiAffinity: &v1.PodAntiAffinity{
			RequiredDuringSchedulingIgnoredDuringExecution: []v1.PodAffinityTerm{
				{
					LabelSelector: &metav1.LabelSelector{MatchLabels: TestLabel},
					TopologyKey:   HostNameLabel,
				}},
		},
	}
)
View Source
var (
	SnapshotAPIGroup = "snapshot.storage.k8s.io"
)

Functions

func ListNodeNames added in v1.5.0

func ListNodeNames(ctx context.Context, c clientset.Interface) []string

Types

type DataSource

type DataSource struct {
	Kind string
	Name string
}

type DynamicallyProvisionedAzureDiskDetach added in v0.9.0

type DynamicallyProvisionedAzureDiskDetach struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pods                   []PodDetails
	StorageClassParameters map[string]string
}

DynamicallyProvisionedAzureDiskDetach will provision required StorageClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create azuredisk delete Pods Testing if disk is in unattached state

func (*DynamicallyProvisionedAzureDiskDetach) Run added in v0.9.0

type DynamicallyProvisionedAzureDiskWithTag added in v0.8.0

type DynamicallyProvisionedAzureDiskWithTag struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pods                   []PodDetails
	StorageClassParameters map[string]string
	Tags                   string
}

DynamicallyProvisionedAzureDiskWithTag will provision required StorageClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create azuredisk Testing if azuredisk contains tag

func (*DynamicallyProvisionedAzureDiskWithTag) Run added in v0.8.0

type DynamicallyProvisionedCmdVolumeTest

type DynamicallyProvisionedCmdVolumeTest struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pods                   []PodDetails
	StorageClassParameters map[string]string
}

DynamicallyProvisionedCmdVolumeTest will provision required StorageClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create a new PV Testing if the Pod(s) Cmd is run with a 0 exit code

func (*DynamicallyProvisionedCmdVolumeTest) Run

type DynamicallyProvisionedCollocatedPodTest

type DynamicallyProvisionedCollocatedPodTest struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pods                   []PodDetails
	ColocatePods           bool
	StorageClassParameters map[string]string
}

DynamicallyProvisionedCollocatedPodTest will provision required StorageClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create a new PV Testing if multiple Pod(s) can write simultaneously

func (*DynamicallyProvisionedCollocatedPodTest) Run

type DynamicallyProvisionedDeletePodTest

type DynamicallyProvisionedDeletePodTest struct {
	CSIDriver driver.DynamicPVTestDriver
	Pod       PodDetails
	PodCheck  *PodExecCheck
}

DynamicallyProvisionedDeletePodTest will provision required StorageClass and Deployment Testing if the Pod can write and read to mounted volumes Deleting a pod, and again testing if the Pod can write and read to mounted volumes

func (*DynamicallyProvisionedDeletePodTest) Run

type DynamicallyProvisionedExternalRgVolumeTest added in v1.26.0

type DynamicallyProvisionedExternalRgVolumeTest struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pod                    PodDetails
	StorageClassParameters map[string]string
	SeparateResourceGroups bool
}

DynamicallyProvisionedExternalRgVolumeTest will provision required StorageClass(es), PVC(s) and Pod(s) in an external resource group Waiting for the PV provisioner to create a new PV Testing if the Pod(s) Cmd is run with a 0 exit code

func (*DynamicallyProvisionedExternalRgVolumeTest) Run added in v1.26.0

type DynamicallyProvisionedInvalidMountOptions added in v0.6.0

type DynamicallyProvisionedInvalidMountOptions struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pods                   []PodDetails
	StorageClassParameters map[string]string
}

DynamicallyProvisionedInvalidMountOptions will provision a storage class with invalid mount options Testing if the Pod(s) Cmd is run with a 0 exit code

func (*DynamicallyProvisionedInvalidMountOptions) Run added in v0.6.0

type DynamicallyProvisionedPodWithMultiplePVsTest added in v0.8.0

type DynamicallyProvisionedPodWithMultiplePVsTest struct {
	CSIDriver driver.DynamicPVTestDriver
	Pods      []PodDetails
}

DynamicallyProvisionedPodWithMultiplePVsTest will provision required StorageClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create a new PV Testing if the Pod(s) Cmd is run with a 0 exit code

func (*DynamicallyProvisionedPodWithMultiplePVsTest) Run added in v0.8.0

type DynamicallyProvisionedReadOnlyVolumeTest

type DynamicallyProvisionedReadOnlyVolumeTest struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pods                   []PodDetails
	StorageClassParameters map[string]string
}

DynamicallyProvisionedReadOnlyVolumeTest will provision required StorageClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create a new PV Testing that the Pod(s) cannot write to the volume when mounted

func (*DynamicallyProvisionedReadOnlyVolumeTest) Run

type DynamicallyProvisionedReclaimPolicyTest

type DynamicallyProvisionedReclaimPolicyTest struct {
	CSIDriver              driver.DynamicPVTestDriver
	Volumes                []VolumeDetails
	Azuredisk              azuredisk.CSIDriver
	StorageClassParameters map[string]string
}

DynamicallyProvisionedReclaimPolicyTest will provision required PV(s) and PVC(s) Testing the correct behavior for different reclaimPolicies

func (*DynamicallyProvisionedReclaimPolicyTest) Run

type DynamicallyProvisionedResizeVolumeTest added in v0.8.0

type DynamicallyProvisionedResizeVolumeTest struct {
	CSIDriver              driver.DynamicPVTestDriver
	StorageClassParameters map[string]string
	Pod                    PodDetails
	Volume                 VolumeDetails
	ResizeOffline          bool
}

DynamicallyProvisionedResizeVolumeTest will provision required StorageClass(es), PVC(s) Waiting for the PV provisioner to resize the PV Testing if the PV is resized successfully.

func (*DynamicallyProvisionedResizeVolumeTest) Run added in v0.8.0

type DynamicallyProvisionedSharedDiskTester added in v1.11.0

type DynamicallyProvisionedSharedDiskTester struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pod                    PodDetails
	PodCheck               *PodExecCheck
	StorageClassParameters map[string]string
}

func (*DynamicallyProvisionedSharedDiskTester) Run added in v1.11.0

type DynamicallyProvisionedStatefulSetTest added in v0.9.0

type DynamicallyProvisionedStatefulSetTest struct {
	CSIDriver driver.DynamicPVTestDriver
	Pod       PodDetails
	PodCheck  *PodExecCheck
}

DynamicallyProvisionedStatefulSetTest will provision required StorageClass and StatefulSet Testing if the Pod can write and read to mounted volumes Deleting a pod, and again testing if the Pod can write and read to mounted volumes

func (*DynamicallyProvisionedStatefulSetTest) Run added in v0.9.0

type DynamicallyProvisionedVolumeCloningTest added in v0.5.0

type DynamicallyProvisionedVolumeCloningTest struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pod                    PodDetails
	PodWithClonedVolume    PodDetails
	ClonedVolumeSize       string
	StorageClassParameters map[string]string
}

DynamicallyProvisionedVolumeCloningTest will provision required StorageClass(es), PVC(s) and Pod(s) ClonedVolumeSize optional for when testing for cloned volume with different size to the original volume

func (*DynamicallyProvisionedVolumeCloningTest) Run added in v0.5.0

type DynamicallyProvisionedVolumeSnapshotCrossRegionTest added in v1.26.4

type DynamicallyProvisionedVolumeSnapshotCrossRegionTest struct {
	CSIDriver                      driver.PVTestDriver
	Pod                            PodDetails
	PodOverwrite                   PodDetails
	PodWithSnapshot                PodDetails
	StorageClassParameters         map[string]string
	SnapshotStorageClassParameters map[string]string
}

DynamicallyProvisionedVolumeSnapshotCrossRegionTest will provision required StorageClass(es),VolumeSnapshotClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create a new PV Testing if the Pod(s) can write and read to mounted volumes Create a snapshot, validate the data is still on the disk, and then write and read to it again And finally delete the snapshot This test only supports a single volume

func (*DynamicallyProvisionedVolumeSnapshotCrossRegionTest) Run added in v1.26.4

type DynamicallyProvisionedVolumeSnapshotTest added in v0.5.0

type DynamicallyProvisionedVolumeSnapshotTest struct {
	CSIDriver                      driver.PVTestDriver
	Pod                            PodDetails
	ShouldOverwrite                bool
	PodOverwrite                   PodDetails
	PodWithSnapshot                PodDetails
	StorageClassParameters         map[string]string
	SnapshotStorageClassParameters map[string]string
	IsWindowsHPCDeployment         bool
}

DynamicallyProvisionedVolumeSnapshotTest will provision required StorageClass(es),VolumeSnapshotClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create a new PV Testing if the Pod(s) can write and read to mounted volumes Create a snapshot, validate the data is still on the disk, and then write and read to it again And finally delete the snapshot This test only supports a single volume

func (*DynamicallyProvisionedVolumeSnapshotTest) Run added in v0.5.0

type DynamicallyProvisionedVolumeSubpathTester added in v1.5.0

type DynamicallyProvisionedVolumeSubpathTester struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pods                   []PodDetails
	StorageClassParameters map[string]string
}

DynamicallyProvisionedCmdVolumeTest will provision required StorageClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to create a new PV Testing if the Pod(s) Cmd is run with a 0 exit code

func (*DynamicallyProvisionedVolumeSubpathTester) Run added in v1.5.0

type PodDetails

type PodDetails struct {
	Cmd             string
	Volumes         []VolumeDetails
	IsWindows       bool
	WinServerVer    string
	UseCMD          bool
	UseAntiAffinity bool
	ReplicaCount    int32
}

func (*PodDetails) SetupDeployment

func (pod *PodDetails) SetupDeployment(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.DynamicPVTestDriver, storageClassParameters map[string]string) (*TestDeployment, []func(context.Context))

func (*PodDetails) SetupDeploymentWithPreProvisionedVolumes added in v1.11.0

func (pod *PodDetails) SetupDeploymentWithPreProvisionedVolumes(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.PreProvisionedVolumeTestDriver, volumeContext map[string]string) (*TestDeployment, []func(context.Context))

func (*PodDetails) SetupStatefulset added in v0.9.0

func (pod *PodDetails) SetupStatefulset(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.DynamicPVTestDriver, storageClassParameters map[string]string) (*TestStatefulset, []func(context.Context))

func (*PodDetails) SetupWithDynamicMultipleVolumes added in v0.8.0

func (pod *PodDetails) SetupWithDynamicMultipleVolumes(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.DynamicPVTestDriver) (*TestPod, []func(context.Context))

SetupWithDynamicMultipleVolumes each pod will be mounted with multiple volumes with different storage account types

func (*PodDetails) SetupWithDynamicVolumes

func (pod *PodDetails) SetupWithDynamicVolumes(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.DynamicPVTestDriver, storageClassParameters map[string]string) (*TestPod, []func(context.Context))

func (*PodDetails) SetupWithDynamicVolumesWithSubpath added in v1.5.0

func (pod *PodDetails) SetupWithDynamicVolumesWithSubpath(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.DynamicPVTestDriver, storageClassParameters map[string]string) (*TestPod, []func(context.Context))

func (*PodDetails) SetupWithInlineVolumes added in v1.2.0

func (pod *PodDetails) SetupWithInlineVolumes(client clientset.Interface, namespace *v1.Namespace, diskURI string, readOnly bool) (*TestPod, []func(context.Context))

func (*PodDetails) SetupWithPreProvisionedVolumes

func (pod *PodDetails) SetupWithPreProvisionedVolumes(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.PreProvisionedVolumeTestDriver, volumeContext map[string]string) (*TestPod, []func(context.Context))

type PodExecCheck

type PodExecCheck struct {
	Cmd            []string
	ExpectedString string
}

type PodFailover added in v1.5.0

type PodFailover struct {
	CSIDriver              driver.DynamicPVTestDriver
	Pod                    PodDetails
	Volume                 VolumeDetails
	PodCheck               *PodExecCheck
	StorageClassParameters map[string]string
}

Will provision required PV(s), PVC(s) and Pod(s)

Pod should successfully be re-scheduled on failover in a cluster with AzDriverNode and AzVolumeAttachment resources

func (*PodFailover) Run added in v1.5.0

func (t *PodFailover) Run(ctx context.Context, client clientset.Interface, namespace *v1.Namespace)

type PreProvisionedDanglingAttachVolumeTest added in v1.0.0

type PreProvisionedDanglingAttachVolumeTest struct {
	CSIDriver       driver.PreProvisionedVolumeTestDriver
	AzureDiskDriver azuredisk.CSIDriver
	Pod             PodDetails
	VolumeContext   map[string]string
}

PreProvisionedDanglingAttachVolumeTest will provision required PV(s), PVC(s) and Pod(s) Testing that a volume could be reattached to a different node on DanglingAttachError

func (*PreProvisionedDanglingAttachVolumeTest) Run added in v1.0.0

type PreProvisionedInlineVolumeTest added in v1.2.0

type PreProvisionedInlineVolumeTest struct {
	CSIDriver driver.PreProvisionedVolumeTestDriver
	Pods      []PodDetails
	DiskURI   string
	ReadOnly  bool
}

PreProvisionedInlineVolumeTest Waiting for the PV provisioner to create an inline volume Testing if the Pod(s) Cmd is run with a 0 exit code

func (*PreProvisionedInlineVolumeTest) Run added in v1.2.0

type PreProvisionedMultiplePodsTest added in v0.9.0

type PreProvisionedMultiplePodsTest struct {
	CSIDriver     driver.PreProvisionedVolumeTestDriver
	Pods          []PodDetails
	VolumeContext map[string]string
}

PreProvisionedMultiplePodsTest will provision required PV(s), PVC(s) and Pod(s) Testing that a volume could be mounted by multiple pods

func (*PreProvisionedMultiplePodsTest) Run added in v0.9.0

type PreProvisionedReadOnlyVolumeTest

type PreProvisionedReadOnlyVolumeTest struct {
	CSIDriver     driver.PreProvisionedVolumeTestDriver
	Pods          []PodDetails
	VolumeContext map[string]string
}

PreProvisionedReadOnlyVolumeTest will provision required PV(s), PVC(s) and Pod(s) Testing that the Pod(s) cannot write to the volume when mounted

func (*PreProvisionedReadOnlyVolumeTest) Run

type PreProvisionedReclaimPolicyTest

type PreProvisionedReclaimPolicyTest struct {
	CSIDriver     driver.PreProvisionedVolumeTestDriver
	Volumes       []VolumeDetails
	VolumeContext map[string]string
}

PreProvisionedReclaimPolicyTest will provision required PV(s) and PVC(s) Testing the correct behavior for different reclaimPolicies

func (*PreProvisionedReclaimPolicyTest) Run

type PreProvisionedSharedDiskTester added in v1.11.0

type PreProvisionedSharedDiskTester struct {
	CSIDriver     driver.PreProvisionedVolumeTestDriver
	Pod           PodDetails
	PodCheck      *PodExecCheck
	VolumeContext map[string]string
}

func (*PreProvisionedSharedDiskTester) Run added in v1.11.0

type TestDeployment

type TestDeployment struct {
	// contains filtered or unexported fields
}

func NewTestDeployment

func NewTestDeployment(c clientset.Interface, ns *v1.Namespace, replicaCount int32, command string, pvc *v1.PersistentVolumeClaim, volumeName, mountPath string, readOnly, isWindows, useCMD, useAntiAffinity bool, winServerVer string) *TestDeployment

func (*TestDeployment) Cleanup

func (t *TestDeployment) Cleanup(ctx context.Context)

func (*TestDeployment) Create

func (t *TestDeployment) Create(ctx context.Context)

func (*TestDeployment) DeletePodAndWait

func (t *TestDeployment) DeletePodAndWait(ctx context.Context)

func (*TestDeployment) Logs

func (t *TestDeployment) Logs(ctx context.Context) (logs [][]byte, err error)

func (*TestDeployment) PollForStringInPodsExec added in v1.19.0

func (t *TestDeployment) PollForStringInPodsExec(command []string, expectedString string)

func (*TestDeployment) WaitForPodReady

func (t *TestDeployment) WaitForPodReady(ctx context.Context)

type TestPersistentVolumeClaim

type TestPersistentVolumeClaim struct {
	// contains filtered or unexported fields
}

func NewTestPersistentVolumeClaim

func NewTestPersistentVolumeClaim(c clientset.Interface, ns *v1.Namespace, claimSize string, volumeMode VolumeMode, accessMode v1.PersistentVolumeAccessMode, sc *storagev1.StorageClass) *TestPersistentVolumeClaim

func NewTestPersistentVolumeClaimWithDataSource

func NewTestPersistentVolumeClaimWithDataSource(c clientset.Interface, ns *v1.Namespace, claimSize string, volumeMode VolumeMode, accessMode v1.PersistentVolumeAccessMode, sc *storagev1.StorageClass, dataSource *v1.TypedLocalObjectReference) *TestPersistentVolumeClaim

func (*TestPersistentVolumeClaim) Cleanup

func (t *TestPersistentVolumeClaim) Cleanup(ctx context.Context)

func (*TestPersistentVolumeClaim) Create

func (t *TestPersistentVolumeClaim) Create(ctx context.Context)

func (*TestPersistentVolumeClaim) DeleteBackingVolume

func (t *TestPersistentVolumeClaim) DeleteBackingVolume(ctx context.Context, driver azuredisk.CSIDriver)

func (*TestPersistentVolumeClaim) DeleteBoundPersistentVolume

func (t *TestPersistentVolumeClaim) DeleteBoundPersistentVolume(ctx context.Context)

func (*TestPersistentVolumeClaim) ReclaimPolicy

func (*TestPersistentVolumeClaim) ValidateProvisionedPersistentVolume

func (t *TestPersistentVolumeClaim) ValidateProvisionedPersistentVolume(ctx context.Context)

func (*TestPersistentVolumeClaim) WaitForBound

func (*TestPersistentVolumeClaim) WaitForPersistentVolumePhase

func (t *TestPersistentVolumeClaim) WaitForPersistentVolumePhase(ctx context.Context, phase v1.PersistentVolumePhase)

type TestPod

type TestPod struct {
	// contains filtered or unexported fields
}

func NewTestPod

func NewTestPod(c clientset.Interface, ns *v1.Namespace, command string, isWindows bool, winServerVer string) *TestPod

func (*TestPod) Cleanup

func (t *TestPod) Cleanup(ctx context.Context)

func (*TestPod) Create

func (t *TestPod) Create(ctx context.Context)

func (*TestPod) GetZoneForVolume added in v1.2.0

func (t *TestPod) GetZoneForVolume(ctx context.Context, index int) string

func (*TestPod) ListNodes added in v1.0.0

func (t *TestPod) ListNodes(ctx context.Context) []string

func (*TestPod) Logs

func (t *TestPod) Logs(ctx context.Context) ([]byte, error)

func (*TestPod) SetAffinity added in v1.24.0

func (t *TestPod) SetAffinity(affinity *v1.Affinity)

func (*TestPod) SetLabel added in v1.24.0

func (t *TestPod) SetLabel(labels map[string]string)

func (*TestPod) SetNodeSelector

func (t *TestPod) SetNodeSelector(nodeSelector map[string]string)

func (*TestPod) SetNodeUnschedulable added in v1.0.0

func (t *TestPod) SetNodeUnschedulable(ctx context.Context, nodeName string, unschedulable bool)

func (*TestPod) SetupInlineVolume added in v1.2.0

func (t *TestPod) SetupInlineVolume(name, mountPath, diskURI string, readOnly bool)

func (*TestPod) SetupRawBlockVolume

func (t *TestPod) SetupRawBlockVolume(pvc *v1.PersistentVolumeClaim, name, devicePath string)

func (*TestPod) SetupVolume

func (t *TestPod) SetupVolume(pvc *v1.PersistentVolumeClaim, name, mountPath string, readOnly bool)

func (*TestPod) SetupVolumeMountWithSubpath added in v1.5.0

func (t *TestPod) SetupVolumeMountWithSubpath(pvc *v1.PersistentVolumeClaim, name, mountPath string, subpath string, readOnly bool)

func (*TestPod) WaitForFailedMountError added in v0.6.0

func (t *TestPod) WaitForFailedMountError(ctx context.Context)

func (*TestPod) WaitForFailure

func (t *TestPod) WaitForFailure(ctx context.Context)

func (*TestPod) WaitForRunning

func (t *TestPod) WaitForRunning(ctx context.Context)

func (*TestPod) WaitForRunningLong added in v1.0.0

func (t *TestPod) WaitForRunningLong(ctx context.Context)

func (*TestPod) WaitForSuccess

func (t *TestPod) WaitForSuccess(ctx context.Context)

type TestPreProvisionedPersistentVolume

type TestPreProvisionedPersistentVolume struct {
	// contains filtered or unexported fields
}

func (*TestPreProvisionedPersistentVolume) Create

type TestStatefulset added in v0.9.0

type TestStatefulset struct {
	// contains filtered or unexported fields
}

func NewTestStatefulset added in v0.9.0

func NewTestStatefulset(c clientset.Interface, ns *v1.Namespace, command string, pvc *v1.PersistentVolumeClaim, volumeName, mountPath string, readOnly, isWindows, useCMD bool, winServerVer string) *TestStatefulset

func (*TestStatefulset) Cleanup added in v0.9.0

func (t *TestStatefulset) Cleanup(ctx context.Context)

func (*TestStatefulset) Create added in v0.9.0

func (t *TestStatefulset) Create(ctx context.Context)

func (*TestStatefulset) DeletePodAndWait added in v0.9.0

func (t *TestStatefulset) DeletePodAndWait(ctx context.Context)

func (*TestStatefulset) Logs added in v0.9.0

func (t *TestStatefulset) Logs(ctx context.Context) ([]byte, error)

func (*TestStatefulset) PollForStringInPodsExec added in v1.19.0

func (t *TestStatefulset) PollForStringInPodsExec(command []string, expectedString string)

func (*TestStatefulset) WaitForPodReady added in v0.9.0

func (t *TestStatefulset) WaitForPodReady(ctx context.Context)

type TestStorageClass

type TestStorageClass struct {
	// contains filtered or unexported fields
}

func (*TestStorageClass) Cleanup

func (t *TestStorageClass) Cleanup(ctx context.Context)

func (*TestStorageClass) Create

type TestVolumeSnapshotClass

type TestVolumeSnapshotClass struct {
	// contains filtered or unexported fields
}

func CreateVolumeSnapshotClass

func CreateVolumeSnapshotClass(client restclientset.Interface, namespace *v1.Namespace, parameters map[string]string, csiDriver driver.VolumeSnapshotTestDriver) (*TestVolumeSnapshotClass, func())

func (*TestVolumeSnapshotClass) Cleanup

func (t *TestVolumeSnapshotClass) Cleanup()

func (*TestVolumeSnapshotClass) Create

func (t *TestVolumeSnapshotClass) Create(ctx context.Context)

func (*TestVolumeSnapshotClass) CreateSnapshot

func (*TestVolumeSnapshotClass) DeleteSnapshot

func (t *TestVolumeSnapshotClass) DeleteSnapshot(ctx context.Context, vs *snapshotv1.VolumeSnapshot)

func (*TestVolumeSnapshotClass) ReadyToUse

func (t *TestVolumeSnapshotClass) ReadyToUse(ctx context.Context, snapshot *snapshotv1.VolumeSnapshot)

type VolumeDetails

type VolumeDetails struct {
	FSType                string
	Encrypted             bool
	MountOptions          []string
	ClaimSize             string
	ReclaimPolicy         *v1.PersistentVolumeReclaimPolicy
	VolumeBindingMode     *storagev1.VolumeBindingMode
	AllowedTopologyValues []string
	VolumeMode            VolumeMode
	VolumeMount           VolumeMountDetails
	VolumeDevice          VolumeDeviceDetails
	VolumeAccessMode      v1.PersistentVolumeAccessMode
	// Optional, used with pre-provisioned volumes
	VolumeID string
	// Optional, used with PVCs created from snapshots or pvc
	DataSource *DataSource
	// Optional, used with specified StorageClass
	StorageClass *storagev1.StorageClass
}

func (*VolumeDetails) CreateStorageClass added in v0.5.0

func (volume *VolumeDetails) CreateStorageClass(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.DynamicPVTestDriver, storageClassParameters map[string]string) (*TestStorageClass, func(context.Context))

func (*VolumeDetails) SetupDynamicPersistentVolumeClaim

func (volume *VolumeDetails) SetupDynamicPersistentVolumeClaim(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.DynamicPVTestDriver, storageClassParameters map[string]string) (*TestPersistentVolumeClaim, []func(context.Context))

func (*VolumeDetails) SetupPreProvisionedPersistentVolumeClaim

func (volume *VolumeDetails) SetupPreProvisionedPersistentVolumeClaim(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.PreProvisionedVolumeTestDriver, volumeContext map[string]string) (*TestPersistentVolumeClaim, []func(context.Context))

type VolumeDeviceDetails

type VolumeDeviceDetails struct {
	NameGenerate string
	DevicePath   string
}

type VolumeMode

type VolumeMode int
const (
	FileSystem VolumeMode = iota
	Block
)

type VolumeMountDetails

type VolumeMountDetails struct {
	NameGenerate      string
	MountPathGenerate string
	ReadOnly          bool
}

Jump to

Keyboard shortcuts

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