diff --git a/changelogs/unreleased/8280-msfrucht b/changelogs/unreleased/8280-msfrucht new file mode 100644 index 0000000000..a9e8f3ea61 --- /dev/null +++ b/changelogs/unreleased/8280-msfrucht @@ -0,0 +1 @@ +Expose VSC SourceVolumeMode diff --git a/pkg/exposer/csi_snapshot.go b/pkg/exposer/csi_snapshot.go index 7a37b794ca..ea44b62387 100644 --- a/pkg/exposer/csi_snapshot.go +++ b/pkg/exposer/csi_snapshot.go @@ -332,6 +332,7 @@ func (e *csiSnapshotExposer) createBackupVSC(ctx context.Context, ownerObject co DeletionPolicy: snapshotv1api.VolumeSnapshotContentDelete, Driver: snapshotVSC.Spec.Driver, VolumeSnapshotClassName: snapshotVSC.Spec.VolumeSnapshotClassName, + SourceVolumeMode: snapshotVSC.Spec.SourceVolumeMode, }, } diff --git a/pkg/exposer/csi_snapshot_test.go b/pkg/exposer/csi_snapshot_test.go index cc0a895e11..2c03197943 100644 --- a/pkg/exposer/csi_snapshot_test.go +++ b/pkg/exposer/csi_snapshot_test.go @@ -110,6 +110,7 @@ func TestExpose(t *testing.T) { } snapshotHandle := "fake-handle" + sourceVolumeMode := corev1.PersistentVolumeFilesystem vscObj := &snapshotv1api.VolumeSnapshotContent{ ObjectMeta: metav1.ObjectMeta{ Name: vscName, @@ -122,6 +123,7 @@ func TestExpose(t *testing.T) { DeletionPolicy: snapshotv1api.VolumeSnapshotContentDelete, Driver: "fake-driver", VolumeSnapshotClassName: &snapshotClass, + SourceVolumeMode: &sourceVolumeMode, }, Status: &snapshotv1api.VolumeSnapshotContentStatus{ RestoreSize: &restoreSize, @@ -433,6 +435,7 @@ func TestExpose(t *testing.T) { assert.Equal(t, expectedVSC.Spec.DeletionPolicy, vscObj.Spec.DeletionPolicy) assert.Equal(t, expectedVSC.Spec.Driver, vscObj.Spec.Driver) assert.Equal(t, *expectedVSC.Spec.VolumeSnapshotClassName, *vscObj.Spec.VolumeSnapshotClassName) + assert.Equal(t, *expectedVSC.Spec.SourceVolumeMode, *vscObj.Spec.SourceVolumeMode) if test.expectedVolumeSize != nil { assert.Equal(t, *test.expectedVolumeSize, backupPVC.Spec.Resources.Requests[corev1.ResourceStorage])