Documentation ¶
Index ¶
- Constants
- func GenerateSASToken(accountName, accountKey string) string
- type DataSource
- type DynamicallyProvisionedCmdVolumeTest
- type DynamicallyProvisionedCollocatedPodTest
- type DynamicallyProvisionedDeletePodTest
- type DynamicallyProvisionedInlineVolumeTest
- type DynamicallyProvisionedInvalidMountOptions
- type DynamicallyProvisionedPodWithMultiplePVsTest
- type DynamicallyProvisionedReadOnlyVolumeTest
- type DynamicallyProvisionedReclaimPolicyTest
- type DynamicallyProvisionedResizeVolumeTest
- type DynamicallyProvisionedRestartDriverTest
- type DynamicallyProvisionedVolumeCloningTest
- type DynamicallyProvisionedVolumeUnmountTest
- type PodDetails
- func (pod *PodDetails) SetupDeployment(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, ...) (*TestDeployment, []func(context.Context), string)
- func (pod *PodDetails) SetupWithCSIInlineVolumes(client clientset.Interface, namespace *v1.Namespace, ...) (*TestPod, []func(context.Context))
- func (pod *PodDetails) SetupWithDynamicMultipleVolumes(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, ...) (*TestPod, []func(context.Context))
- func (pod *PodDetails) SetupWithDynamicVolumes(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, ...) (*TestPod, []func(context.Context))
- func (pod *PodDetails) SetupWithPreProvisionedVolumes(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, ...) (*TestPod, []func(context.Context))
- type PodExecCheck
- type PreProvisionedExistingCredentialsTest
- type PreProvisionedKeyVaultTest
- type PreProvisionedMultiplePods
- type PreProvisionedProvidedCredentiasTest
- type PreProvisionedReadOnlyVolumeTest
- type PreProvisionedReclaimPolicyTest
- type PreProvisionedSASTokenTest
- type TestDeployment
- func (t *TestDeployment) Cleanup(ctx context.Context)
- func (t *TestDeployment) Create(ctx context.Context)
- func (t *TestDeployment) DeletePodAndWait(ctx context.Context)
- func (t *TestDeployment) Exec(command []string, expectedString string)
- func (t *TestDeployment) Logs(ctx context.Context) ([]byte, error)
- func (t *TestDeployment) PollForStringInPodsExec(command []string, expectedString string)
- func (t *TestDeployment) WaitForPodReady(ctx context.Context)
- type TestPersistentVolumeClaim
- func (t *TestPersistentVolumeClaim) Cleanup(ctx context.Context)
- func (t *TestPersistentVolumeClaim) Create(ctx context.Context)
- func (t *TestPersistentVolumeClaim) DeleteBackingVolume(ctx context.Context, azfile *blob.Driver)
- func (t *TestPersistentVolumeClaim) DeleteBoundPersistentVolume(ctx context.Context)
- func (t *TestPersistentVolumeClaim) ReclaimPolicy() v1.PersistentVolumeReclaimPolicy
- func (t *TestPersistentVolumeClaim) ValidateProvisionedPersistentVolume(ctx context.Context)
- func (t *TestPersistentVolumeClaim) WaitForBound(ctx context.Context) v1.PersistentVolumeClaim
- func (t *TestPersistentVolumeClaim) WaitForPersistentVolumePhase(ctx context.Context, phase v1.PersistentVolumePhase)
- type TestPod
- func (t *TestPod) Cleanup(ctx context.Context)
- func (t *TestPod) Create(ctx context.Context)
- func (t *TestPod) Logs(ctx context.Context) ([]byte, error)
- func (t *TestPod) SetNodeSelector(nodeSelector map[string]string)
- func (t *TestPod) SetupInlineVolume(name, mountPath, secretName, containerName string, readOnly bool)
- func (t *TestPod) SetupRawBlockVolume(pvc *v1.PersistentVolumeClaim, name, devicePath string)
- func (t *TestPod) SetupVolume(pvc *v1.PersistentVolumeClaim, name, mountPath string, readOnly bool)
- func (t *TestPod) WaitForFailedMountError(ctx context.Context)
- func (t *TestPod) WaitForFailure(ctx context.Context)
- func (t *TestPod) WaitForRunning(ctx context.Context)
- func (t *TestPod) WaitForSuccess(ctx context.Context)
- type TestPreProvisionedPersistentVolume
- type TestSecret
- type TestStorageClass
- type VolumeDetails
- func (volume *VolumeDetails) CreateStorageClass(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, ...) (*TestStorageClass, func(ctx context.Context))
- func (volume *VolumeDetails) SetupDynamicPersistentVolumeClaim(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, ...) (*TestPersistentVolumeClaim, []func(context.Context))
- func (volume *VolumeDetails) SetupPreProvisionedPersistentVolumeClaim(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, ...) (*TestPersistentVolumeClaim, []func(ctx context.Context))
- type VolumeDeviceDetails
- type VolumeMode
- type VolumeMountDetails
Constants ¶
const ( VolumePVCKind = "PersistentVolumeClaim" APIVersionv1alpha1 = "v1alpha1" )
Variables ¶
This section is empty.
Functions ¶
func GenerateSASToken ¶ added in v1.16.0
Types ¶
type DataSource ¶
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
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
type DynamicallyProvisionedDeletePodTest ¶
type DynamicallyProvisionedDeletePodTest struct { CSIDriver driver.DynamicPVTestDriver Pod PodDetails PodCheck *PodExecCheck StorageClassParameters map[string]string }
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
type DynamicallyProvisionedInlineVolumeTest ¶ added in v1.2.0
type DynamicallyProvisionedInlineVolumeTest struct { CSIDriver driver.DynamicPVTestDriver Pods []PodDetails SecretName string ContainerName string ReadOnly bool }
DynamicallyProvisionedInlineVolumeTest will provision required SecretName, ContainerName Waiting for the PV provisioner to create an inline volume Testing if the Pod(s) Cmd is run with a 0 exit code
type DynamicallyProvisionedInvalidMountOptions ¶ added in v0.7.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
type DynamicallyProvisionedPodWithMultiplePVsTest ¶ added in v0.7.0
type DynamicallyProvisionedPodWithMultiplePVsTest struct { CSIDriver driver.DynamicPVTestDriver Pods []PodDetails }
DynamicallyProvisionedPodWithMultiplePVsTest will provision one pod with multiple PVs Waiting for the PV provisioner to create a new PV Testing if the Pod(s) Cmd is run with a 0 exit code
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
type DynamicallyProvisionedReclaimPolicyTest ¶
type DynamicallyProvisionedReclaimPolicyTest struct { CSIDriver driver.DynamicPVTestDriver Volumes []VolumeDetails Driver *blob.Driver StorageClassParameters map[string]string }
DynamicallyProvisionedReclaimPolicyTest will provision required PV(s) and PVC(s) Testing the correct behavior for different reclaimPolicies
type DynamicallyProvisionedResizeVolumeTest ¶ added in v0.11.0
type DynamicallyProvisionedResizeVolumeTest struct { CSIDriver driver.DynamicPVTestDriver Pods []PodDetails StorageClassParameters map[string]string }
DynamicallyProvisionedResizeVolumeTest will provision required StorageClass(es), PVC(s) and Pod(s) Waiting for the PV provisioner to resize the PV Testing if the PV is resized successfully.
type DynamicallyProvisionedRestartDriverTest ¶ added in v1.17.0
type DynamicallyProvisionedRestartDriverTest struct { CSIDriver driver.DynamicPVTestDriver Pod PodDetails PodCheck *PodExecCheck StorageClassParameters map[string]string RestartDriverFunc func() }
DynamicallyProvisionedRestartDriverTest will test to ensure that restarting driver doesn't affect pod mounting. It will mount a pod, restart the driver daemonset and ensure that the pod still has access to original volume.
type DynamicallyProvisionedVolumeCloningTest ¶ added in v1.23.2
type DynamicallyProvisionedVolumeCloningTest struct { CSIDriver driver.DynamicPVTestDriver Pod PodDetails PodWithClonedVolume PodDetails ClonedVolumeSize string StorageClassParameters map[string]string ClonedStorageClassParameters 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
type DynamicallyProvisionedVolumeUnmountTest ¶ added in v1.20.0
type DynamicallyProvisionedVolumeUnmountTest struct { CSIDriver driver.DynamicPVTestDriver Driver *blob.Driver Pod PodDetails PodCheck *PodExecCheck StorageClassParameters map[string]string }
DynamicallyProvisionedVolumeUnmountTest will provision required StorageClass and Deployment Testing if the Pod can write and read to mounted volumes Delete the volume and check whether pod could be terminated successfully
type PodDetails ¶
type PodDetails struct { Cmd string Volumes []VolumeDetails }
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), string)
func (*PodDetails) SetupWithCSIInlineVolumes ¶ added in v1.2.0
func (*PodDetails) SetupWithDynamicMultipleVolumes ¶ added in v0.7.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 (*PodDetails) SetupWithPreProvisionedVolumes ¶
type PodExecCheck ¶
type PreProvisionedExistingCredentialsTest ¶ added in v0.5.0
type PreProvisionedExistingCredentialsTest struct { CSIDriver driver.PreProvisionedVolumeTestDriver Pods []PodDetails }
PreProvisionedExistingCredentialsTest will provision required StorageClass(es), PVC(s) and Pod(s) Testing that the Pod(s) can be created successfully with existing credentials in k8s cluster
type PreProvisionedKeyVaultTest ¶ added in v1.16.0
type PreProvisionedKeyVaultTest struct { CSIDriver driver.PreProvisionedVolumeTestDriver Pods []PodDetails Driver *blob.Driver }
PreProvisionedKeyVaultTest will provision required PV(s), PVC(s) and Pod(s) Testing that the Pod(s) can be created successfully with provided Key Vault which is used to store storage account name and key
type PreProvisionedMultiplePods ¶ added in v1.2.0
type PreProvisionedMultiplePods struct { CSIDriver driver.PreProvisionedVolumeTestDriver Pods []PodDetails }
PreProvisionedMultiplePods will provision required PV(s), PVC(s) and Pod(s) Testing that the Pod(s) cannot write to the volume when mounted
type PreProvisionedProvidedCredentiasTest ¶ added in v0.5.0
type PreProvisionedProvidedCredentiasTest struct { CSIDriver driver.PreProvisionedVolumeTestDriver Pods []PodDetails Driver *blob.Driver }
PreProvisionedProvidedCredentiasTest will provision required PV(s), PVC(s) and Pod(s) Testing that the Pod(s) can be created successfully with provided storage account name and key(or sastoken)
type PreProvisionedReadOnlyVolumeTest ¶
type PreProvisionedReadOnlyVolumeTest struct { CSIDriver driver.PreProvisionedVolumeTestDriver Pods []PodDetails }
PreProvisionedReadOnlyVolumeTest will provision required PV(s), PVC(s) and Pod(s) Testing that the Pod(s) cannot write to the volume when mounted
type PreProvisionedReclaimPolicyTest ¶
type PreProvisionedReclaimPolicyTest struct { CSIDriver driver.PreProvisionedVolumeTestDriver Volumes []VolumeDetails }
PreProvisionedReclaimPolicyTest will provision required PV(s) and PVC(s) Testing the correct behavior for different reclaimPolicies
type PreProvisionedSASTokenTest ¶ added in v1.16.0
type PreProvisionedSASTokenTest struct { CSIDriver driver.PreProvisionedVolumeTestDriver Pods []PodDetails Driver *blob.Driver }
PreProvisionedSASTokenTest will provision required PV(s), PVC(s) and Pod(s) Testing that the Pod(s) can be created successfully with provided Key Vault which is used to store storage SAS token
type TestDeployment ¶
type TestDeployment struct {
// contains filtered or unexported fields
}
func NewTestDeployment ¶
func NewTestDeployment(c clientset.Interface, ns *v1.Namespace, command string, pvc *v1.PersistentVolumeClaim, volumeName, mountPath string, readOnly bool) *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) Exec ¶
func (t *TestDeployment) Exec(command []string, expectedString string)
func (*TestDeployment) PollForStringInPodsExec ¶ added in v1.17.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, sc *storagev1.StorageClass) *TestPersistentVolumeClaim
func NewTestPersistentVolumeClaimWithDataSource ¶
func NewTestPersistentVolumeClaimWithDataSource(c clientset.Interface, ns *v1.Namespace, claimSize string, volumeMode VolumeMode, 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, azfile *blob.Driver)
func (*TestPersistentVolumeClaim) DeleteBoundPersistentVolume ¶
func (t *TestPersistentVolumeClaim) DeleteBoundPersistentVolume(ctx context.Context)
func (*TestPersistentVolumeClaim) ReclaimPolicy ¶
func (t *TestPersistentVolumeClaim) ReclaimPolicy() v1.PersistentVolumeReclaimPolicy
func (*TestPersistentVolumeClaim) ValidateProvisionedPersistentVolume ¶
func (t *TestPersistentVolumeClaim) ValidateProvisionedPersistentVolume(ctx context.Context)
func (*TestPersistentVolumeClaim) WaitForBound ¶
func (t *TestPersistentVolumeClaim) WaitForBound(ctx context.Context) v1.PersistentVolumeClaim
func (*TestPersistentVolumeClaim) WaitForPersistentVolumePhase ¶
func (t *TestPersistentVolumeClaim) WaitForPersistentVolumePhase(ctx context.Context, phase v1.PersistentVolumePhase)
type TestPod ¶
type TestPod struct {
// contains filtered or unexported fields
}
func (*TestPod) SetNodeSelector ¶
func (*TestPod) SetupInlineVolume ¶ added in v1.2.0
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) WaitForFailedMountError ¶ added in v0.7.0
func (*TestPod) WaitForFailure ¶
func (*TestPod) WaitForRunning ¶
func (*TestPod) WaitForSuccess ¶
type TestPreProvisionedPersistentVolume ¶
type TestPreProvisionedPersistentVolume struct {
// contains filtered or unexported fields
}
func NewTestPreProvisionedPersistentVolume ¶
func NewTestPreProvisionedPersistentVolume(c clientset.Interface, pv *v1.PersistentVolume) *TestPreProvisionedPersistentVolume
func (*TestPreProvisionedPersistentVolume) Create ¶
func (pv *TestPreProvisionedPersistentVolume) Create(ctx context.Context) v1.PersistentVolume
type TestSecret ¶ added in v0.5.0
type TestSecret struct {
// contains filtered or unexported fields
}
func NewTestSecret ¶ added in v0.5.0
func (*TestSecret) Cleanup ¶ added in v0.5.0
func (t *TestSecret) Cleanup(ctx context.Context)
func (*TestSecret) Create ¶ added in v0.5.0
func (t *TestSecret) Create(ctx context.Context)
type TestStorageClass ¶
type TestStorageClass struct {
// contains filtered or unexported fields
}
func NewTestStorageClass ¶
func NewTestStorageClass(c clientset.Interface, ns *v1.Namespace, sc *storagev1.StorageClass) *TestStorageClass
func (*TestStorageClass) Cleanup ¶
func (t *TestStorageClass) Cleanup(ctx context.Context)
func (*TestStorageClass) Create ¶
func (t *TestStorageClass) Create(ctx context.Context) storagev1.StorageClass
type VolumeDetails ¶
type VolumeDetails struct { VolumeType string FSType string Encrypted bool MountOptions []string ClaimSize string ReclaimPolicy *v1.PersistentVolumeReclaimPolicy VolumeBindingMode *storagev1.VolumeBindingMode AllowedTopologyValues []string VolumeMode VolumeMode VolumeMount VolumeMountDetails VolumeDevice VolumeDeviceDetails // Optional, used with pre-provisioned volumes VolumeID string // Optional, used with PVCs created from snapshots DataSource *DataSource // Optional, used with specified StorageClass StorageClass *storagev1.StorageClass NodeStageSecretRef string Attrib map[string]string }
func (*VolumeDetails) CreateStorageClass ¶ added in v1.23.2
func (volume *VolumeDetails) CreateStorageClass(ctx context.Context, client clientset.Interface, namespace *v1.Namespace, csiDriver driver.DynamicPVTestDriver, storageClassParameters map[string]string) (*TestStorageClass, func(ctx 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) (*TestPersistentVolumeClaim, []func(ctx context.Context))
type VolumeDeviceDetails ¶
type VolumeMountDetails ¶
Source Files ¶
- dynamically_provisioned_cmd_volume_tester.go
- dynamically_provisioned_collocated_pod_tester.go
- dynamically_provisioned_delete_pod_tester.go
- dynamically_provisioned_inline_volume.go
- dynamically_provisioned_invalid_mount_options.go
- dynamically_provisioned_pod_with_multiple_pv.go
- dynamically_provisioned_read_only_volume_tester.go
- dynamically_provisioned_reclaim_policy_tester.go
- dynamically_provisioned_resize_volume_tester.go
- dynamically_provisioned_restart_driver_tester.go
- dynamically_provisioned_volume_cloning_tester.go
- dynamically_provisioned_volume_unmount_tester.go
- pre_provisioned_existing_credentials_tester.go
- pre_provisioned_keyvault_tester.go
- pre_provisioned_multiple_pods.go
- pre_provisioned_provided_credentials_tester.go
- pre_provisioned_read_only_volume_tester.go
- pre_provisioned_reclaim_policy_tester.go
- pre_provisioned_sastoken_tester.go
- specs.go
- testsuites.go