mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 20:24:09 +00:00
Merge pull request #68693 from davidz627/fix/dynamicLeak
Fixed leaking dynamic provioning test PDs
This commit is contained in:
commit
5966ed7784
@ -18,6 +18,7 @@ package testsuites
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"time"
|
||||||
|
|
||||||
. "github.com/onsi/ginkgo"
|
. "github.com/onsi/ginkgo"
|
||||||
. "github.com/onsi/gomega"
|
. "github.com/onsi/gomega"
|
||||||
@ -192,9 +193,25 @@ func (r *genericVolumeTestResource) cleanupResource(driver drivers.TestDriver, p
|
|||||||
volType := pattern.VolType
|
volType := pattern.VolType
|
||||||
|
|
||||||
if r.pvc != nil || r.pv != nil {
|
if r.pvc != nil || r.pv != nil {
|
||||||
By("Deleting pv and pvc")
|
switch volType {
|
||||||
if errs := framework.PVPVCCleanup(f.ClientSet, f.Namespace.Name, r.pv, r.pvc); len(errs) != 0 {
|
case testpatterns.PreprovisionedPV:
|
||||||
framework.Failf("Failed to delete PVC or PV: %v", utilerrors.NewAggregate(errs))
|
By("Deleting pv and pvc")
|
||||||
|
if errs := framework.PVPVCCleanup(f.ClientSet, f.Namespace.Name, r.pv, r.pvc); len(errs) != 0 {
|
||||||
|
framework.Failf("Failed to delete PVC or PV: %v", utilerrors.NewAggregate(errs))
|
||||||
|
}
|
||||||
|
case testpatterns.DynamicPV:
|
||||||
|
By("Deleting pvc")
|
||||||
|
// We only delete the PVC so that PV (and disk) can be cleaned up by dynamic provisioner
|
||||||
|
if r.pv.Spec.PersistentVolumeReclaimPolicy != v1.PersistentVolumeReclaimDelete {
|
||||||
|
framework.Failf("Test framework does not currently support Dynamically Provisioned Persistent Volume %v specified with reclaim policy that isnt %v",
|
||||||
|
r.pv.Name, v1.PersistentVolumeReclaimDelete)
|
||||||
|
}
|
||||||
|
err := framework.DeletePersistentVolumeClaim(f.ClientSet, r.pvc.Name, f.Namespace.Name)
|
||||||
|
framework.ExpectNoError(err, "Failed to delete PVC %v", r.pvc.Name)
|
||||||
|
err = framework.WaitForPersistentVolumeDeleted(f.ClientSet, r.pv.Name, 5*time.Second, 5*time.Minute)
|
||||||
|
framework.ExpectNoError(err, "Persistent Volume %v not deleted by dynamic provisioner", r.pv.Name)
|
||||||
|
default:
|
||||||
|
framework.Failf("Found PVC (%v) or PV (%v) but not running Preprovisioned or Dynamic test pattern", r.pvc, r.pv)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user