@@ -281,9 +281,9 @@ func handle() error {
281
281
testParams .k8sSourceDir = * localK8sDir
282
282
}
283
283
284
- // If test version is set, then download and build Kubernetes to run K8s tests
285
- // Otherwise, either kube version is set (which implies GCE) or a local K8s dir is being used
286
- if len (* testVersion ) != 0 && * testVersion != * kubeVersion {
284
+ // If using kubetest and test version is set, then download and build Kubernetes to run K8s tests
285
+ // Otherwise, either kube version is set (which implies GCE) or a local K8s dir is being used.
286
+ if ! * useKubeTest2 && len (* testVersion ) != 0 && * testVersion != * kubeVersion {
287
287
testParams .k8sSourceDir = filepath .Join (testParams .testParentDir , "kubernetes" )
288
288
err := downloadKubernetesSource (testParams .pkgDir , testParams .testParentDir , * testVersion )
289
289
if err != nil {
@@ -600,21 +600,23 @@ func runMigrationTests(testParams *testParameters) error {
600
600
func runCSITests (testParams * testParameters , storageClassFile string , reportPrefix string ) error {
601
601
testDriverConfigFile , err := generateDriverConfigFile (testParams , storageClassFile )
602
602
if err != nil {
603
- return err
603
+ return fmt . Errorf ( "failed to generated driver config: %w" , err )
604
604
}
605
605
testConfigArg := fmt .Sprintf ("--storage.testdriver=%s" , testDriverConfigFile )
606
606
return runTestsWithConfig (testParams , testConfigArg , reportPrefix )
607
607
}
608
608
609
609
func runTestsWithConfig (testParams * testParameters , testConfigArg , reportPrefix string ) error {
610
- err := os .Chdir (testParams .k8sSourceDir )
611
- if err != nil {
612
- return err
610
+ if ! * useKubeTest2 && len (testParams .k8sSourceDir ) > 0 {
611
+ err := os .Chdir (testParams .k8sSourceDir )
612
+ if err != nil {
613
+ return fmt .Errorf ("Failed to chdir to k8sSourceDir %s: %w" , testParams .k8sSourceDir , err )
614
+ }
613
615
}
614
616
615
617
kubeconfig , err := getKubeConfig ()
616
618
if err != nil {
617
- return err
619
+ return fmt . Errorf ( "Failed to get kubeconfig: %w" , err )
618
620
}
619
621
os .Setenv ("KUBECONFIG" , kubeconfig )
620
622
@@ -625,7 +627,7 @@ func runTestsWithConfig(testParams *testParameters, testConfigArg, reportPrefix
625
627
if len (reportPrefix ) > 0 {
626
628
kubetestDumpDir = filepath .Join (artifactsDir , reportPrefix )
627
629
if err := os .MkdirAll (kubetestDumpDir , 0755 ); err != nil {
628
- return err
630
+ return fmt . Errorf ( "failed to make dump dir %s: %w" , kubetestDumpDir , err )
629
631
}
630
632
} else {
631
633
kubetestDumpDir = artifactsDir
@@ -656,6 +658,9 @@ func runTestsWithConfig(testParams *testParameters, testConfigArg, reportPrefix
656
658
kubeTest2Args = append (kubeTest2Args , fmt .Sprintf ("--log_dir=%s" , kubetestDumpDir ))
657
659
}
658
660
kubeTest2Args = append (kubeTest2Args , "--" )
661
+ if len (* testVersion ) != 0 && * testVersion != "master" {
662
+ kubeTest2Args = append (kubeTest2Args , fmt .Sprintf ("--test-package-version=v%s" , * testVersion ))
663
+ }
659
664
kubeTest2Args = append (kubeTest2Args , fmt .Sprintf ("--focus-regex=%s" , testParams .testFocus ))
660
665
kubeTest2Args = append (kubeTest2Args , fmt .Sprintf ("--skip-regex=%s" , testParams .testSkip ))
661
666
// kubetest uses 25 as default value for ginkgo parallelism (--nodes).
0 commit comments