Documentation
¶
Overview ¶
Package snap holds assertions for SNAP storage objects and consumer I/O.
Deploying the stack stays with the e2e suite because it is tied to its config, manifest handling, and DPU pinning.
Index ¶
- Constants
- func VerifyDPUStoragePolicyReady(ctx context.Context, c client.Client, namespace, name string)
- func VerifyDPUStorageVendorReady(ctx context.Context, c client.Client, namespace, name string)
- func VerifyDPUVolumesBound(ctx context.Context, c client.Client, namespace string, expectedCount int)
- func VerifyNVMeAttachmentsReady(ctx context.Context, c client.Client, namespace string, expectedCount int)
- func VerifyNVMeRawBlockIO(restClient *rest.RESTClient, restConfig *rest.Config, ...)
- func VerifySVVolumeAttachmentsAttached(ctx context.Context, dpuClusterClient client.Client, namespace string, ...)
- func VerifyVirtioFSAttachmentsReady(ctx context.Context, c client.Client, namespace string, expectedCount int)
- func VerifyVirtioFSMount(restClient *rest.RESTClient, restConfig *rest.Config, ...)
- func VerifyWorkloadHeartbeat(restClient *rest.RESTClient, restConfig *rest.Config, ...)
- func WaitForWorkloadPodRunning(ctx context.Context, c client.Client, namespace, podName string)
Constants ¶
const ( // ServiceReadyTimeout covers the storage control plane reconciling its own objects, which waits on the // DPU-side services coming up. ServiceReadyTimeout = 20 * time.Minute // VolumeReadyTimeout covers provisioning a volume on the backend and attaching it to the DPU. VolumeReadyTimeout = 10 * time.Minute // MountTimeout covers the host mounting an already attached volume. MountTimeout = 5 * time.Minute // PollInterval is the polling interval for all of the waits above. PollInterval = 1 * time.Second )
Variables ¶
This section is empty.
Functions ¶
func VerifyDPUStoragePolicyReady ¶
VerifyDPUStoragePolicyReady waits for the named DPUStoragePolicy to become Ready.
func VerifyDPUStorageVendorReady ¶
VerifyDPUStorageVendorReady waits for the named DPUStorageVendor to become Ready.
func VerifyDPUVolumesBound ¶
func VerifyDPUVolumesBound(ctx context.Context, c client.Client, namespace string, expectedCount int)
VerifyDPUVolumesBound waits for all workload DPUVolumes in namespace to reach the Bound phase.
func VerifyNVMeAttachmentsReady ¶
func VerifyNVMeAttachmentsReady(ctx context.Context, c client.Client, namespace string, expectedCount int)
VerifyNVMeAttachmentsReady waits for all attachments and checks their NVMe namespace IDs.
func VerifyNVMeRawBlockIO ¶
func VerifyNVMeRawBlockIO(restClient *rest.RESTClient, restConfig *rest.Config, namespace, podName, devicePath string)
VerifyNVMeRawBlockIO writes a unique marker to a raw block device and reads it back.
func VerifySVVolumeAttachmentsAttached ¶
func VerifySVVolumeAttachmentsAttached(ctx context.Context, dpuClusterClient client.Client, namespace string, expectedCount int)
VerifySVVolumeAttachmentsAttached waits for all backend attachments to become attached.
func VerifyVirtioFSAttachmentsReady ¶
func VerifyVirtioFSAttachmentsReady(ctx context.Context, c client.Client, namespace string, expectedCount int)
VerifyVirtioFSAttachmentsReady waits for all attachments and checks their VirtioFS tags.
func VerifyVirtioFSMount ¶
func VerifyVirtioFSMount(restClient *rest.RESTClient, restConfig *rest.Config, namespace, podName, mountPath string)
VerifyVirtioFSMount asserts that mountPath is a virtiofs mount inside the pod and that a write followed by a read round-trips, via an exec on the cluster the pod runs in.
func VerifyWorkloadHeartbeat ¶
func VerifyWorkloadHeartbeat(restClient *rest.RESTClient, restConfig *rest.Config, namespace, podName, heartbeatFile string)
VerifyWorkloadHeartbeat verifies the workload container's own write loop lands on the mount by reading the heartbeat file it maintains in a loop (see test/objects/storage/sts-fs.yaml).
Types ¶
This section is empty.