@@ -1360,112 +1360,6 @@ var _ = Describe("[vendor:
[email protected] ][level:component]DataVolume tests",
13601360 Entry ("[test_id:8045]for clone DataVolume" , createCloneDataVolume , fillCommand ),
13611361 )
13621362
1363- Context ("default virt storage class" , Serial , func () {
1364- var defaultVirtStorageClass * storagev1.StorageClass
1365- var dummyStorageClass * storagev1.StorageClass
1366- var defaultStorageClass * storagev1.StorageClass
1367-
1368- getDefaultStorageClassName := func () string {
1369- return utils .DefaultStorageClass .GetName ()
1370- }
1371- getDefaultVirtStorageClassName := func () string {
1372- return defaultVirtStorageClass .GetName ()
1373- }
1374- getDummyStorageClassName := func () string {
1375- return dummyStorageClass .GetName ()
1376- }
1377- importFunc := func () * cdiv1.DataVolume {
1378- return utils .NewDataVolumeWithHTTPImportAndStorageSpec ("dv-virt-sc-test-import" , "1Gi" , tinyCoreIsoURL ())
1379- }
1380- importFuncPVCAPI := func () * cdiv1.DataVolume {
1381- return utils .NewDataVolumeWithHTTPImport ("dv-virt-sc-test-import" , "1Gi" , tinyCoreIsoURL ())
1382- }
1383- importExplicitScFunc := func () * cdiv1.DataVolume {
1384- dv := utils .NewDataVolumeWithHTTPImportAndStorageSpec ("dv-virt-sc-test-import" , "1Gi" , tinyCoreIsoURL ())
1385- sc := getDummyStorageClassName ()
1386- dv .Spec .Storage .StorageClassName = & sc
1387- return dv
1388- }
1389- uploadFunc := func () * cdiv1.DataVolume {
1390- return utils .NewDataVolumeForUploadWithStorageAPI ("dv-virt-sc-test-upload" , "1Gi" )
1391- }
1392- cloneFunc := func () * cdiv1.DataVolume {
1393- sourcePodFillerName := fmt .Sprintf ("%s-filler-pod" , dataVolumeName )
1394- pvcDef := utils .NewPVCDefinition (pvcName , "1Gi" , nil , nil )
1395- sourcePvc := f .CreateAndPopulateSourcePVC (pvcDef , sourcePodFillerName , fillCommand )
1396-
1397- By (fmt .Sprintf ("creating a new target PVC (datavolume) to clone %s" , sourcePvc .Name ))
1398- return utils .NewDataVolumeForImageCloningAndStorageSpec ("dv-virt-sc-test-clone" , "1Gi" , f .Namespace .Name , sourcePvc .Name , nil , nil )
1399- }
1400- archiveFunc := func () * cdiv1.DataVolume {
1401- return utils .NewDataVolumeWithArchiveContentStorage ("dv-virt-sc-test-archive" , "1Gi" , tarArchiveURL ())
1402- }
1403-
1404- BeforeEach (func () {
1405- addVirtParam := func (sc * storagev1.StorageClass ) {
1406- if len (sc .Parameters ) == 0 {
1407- sc .Parameters = map [string ]string {}
1408- }
1409- sc .Parameters ["better.for.kubevirt.io" ] = "true"
1410- controller .AddAnnotation (sc , controller .AnnDefaultVirtStorageClass , "true" )
1411- }
1412- addDummyAnn := func (sc * storagev1.StorageClass ) {
1413- controller .AddAnnotation (sc , "dummy" , "true" )
1414- }
1415- sc , err := f .K8sClient .StorageV1 ().StorageClasses ().Get (context .TODO (), getDefaultStorageClassName (), metav1.GetOptions {})
1416- Expect (err ).ToNot (HaveOccurred ())
1417- defaultStorageClass = sc
1418- defaultVirtStorageClass , err = f .CreateNonDefaultVariationOfStorageClass (sc , addVirtParam )
1419- Expect (err ).ToNot (HaveOccurred ())
1420- dummyStorageClass , err = f .CreateNonDefaultVariationOfStorageClass (sc , addDummyAnn )
1421- Expect (err ).ToNot (HaveOccurred ())
1422- })
1423-
1424- AfterEach (func () {
1425- err := f .K8sClient .StorageV1 ().StorageClasses ().Delete (context .TODO (), defaultVirtStorageClass .Name , metav1.DeleteOptions {})
1426- Expect (err ).ToNot (HaveOccurred ())
1427- err = f .K8sClient .StorageV1 ().StorageClasses ().Delete (context .TODO (), dummyStorageClass .Name , metav1.DeleteOptions {})
1428- Expect (err ).ToNot (HaveOccurred ())
1429-
1430- if defaultStorageClass .Annotations [controller .AnnDefaultStorageClass ] != "true" {
1431- controller .AddAnnotation (defaultStorageClass , controller .AnnDefaultStorageClass , "true" )
1432- _ , err = f .K8sClient .StorageV1 ().StorageClasses ().Update (context .TODO (), defaultStorageClass , metav1.UpdateOptions {})
1433- Expect (err ).ToNot (HaveOccurred ())
1434- }
1435- })
1436-
1437- DescribeTable ("Should" , func (dvFunc func () * cdiv1.DataVolume , getExpectedStorageClassName func () string , removeDefault bool ) {
1438- var err error
1439- // Default storage class exists check
1440- _ = utils .GetDefaultStorageClass (f .K8sClient )
1441- if removeDefault {
1442- controller .AddAnnotation (defaultStorageClass , controller .AnnDefaultStorageClass , "false" )
1443- defaultStorageClass , err = f .K8sClient .StorageV1 ().StorageClasses ().Update (context .TODO (), defaultStorageClass , metav1.UpdateOptions {})
1444- Expect (err ).ToNot (HaveOccurred ())
1445- }
1446-
1447- dataVolume := dvFunc ()
1448- By (fmt .Sprintf ("creating new datavolume %s" , dataVolume .Name ))
1449- dataVolume , err = utils .CreateDataVolumeFromDefinition (f .CdiClient , f .Namespace .Name , dataVolume )
1450- Expect (err ).ToNot (HaveOccurred ())
1451-
1452- // verify PVC was created
1453- By ("verifying pvc was created" )
1454- pvc , err := utils .WaitForPVC (f .K8sClient , dataVolume .Namespace , dataVolume .Name )
1455- Expect (err ).ToNot (HaveOccurred ())
1456-
1457- Expect (pvc .Spec .StorageClassName ).To (HaveValue (Equal (getExpectedStorageClassName ())))
1458- },
1459- Entry ("[test_id:10505]respect default virt storage class for import DataVolume" , importFunc , getDefaultVirtStorageClassName , false ),
1460- Entry ("[test_id:10506]respect default virt storage class for upload DataVolume" , uploadFunc , getDefaultVirtStorageClassName , false ),
1461- Entry ("[test_id:10507]respect default virt storage class for clone DataVolume" , cloneFunc , getDefaultVirtStorageClassName , false ),
1462- Entry ("[test_id:10508]respect default virt storage class even if no k8s default exists" , importFunc , getDefaultVirtStorageClassName , true ),
1463- Entry ("[test_id:10509]not respect default virt storage class for contenType other than kubevirt" , archiveFunc , getDefaultStorageClassName , false ),
1464- Entry ("[test_id:10510]not respect default virt storage class for PVC api" , importFuncPVCAPI , getDefaultStorageClassName , false ),
1465- Entry ("[test_id:10511]not respect default virt storage class if explicit storage class provided" , importExplicitScFunc , getDummyStorageClassName , false ),
1466- )
1467- })
1468-
14691363 It ("Should handle a pre populated DV" , func () {
14701364 By (fmt .Sprintf ("initializing dataVolume marked as prePopulated %s" , dataVolumeName ))
14711365 dataVolume := utils .NewDataVolumeWithHTTPImport (dataVolumeName , "1Gi" , cirrosURL ())
0 commit comments