@@ -427,6 +427,7 @@ func CleanUp() bool {
427427 podCount := 0
428428 pvcCount := 0
429429 snapshotCount := 0
430+ statefulsetCount := 0
430431
431432 nameSpaces , err := gTestEnv .KubeInt .CoreV1 ().Namespaces ().List (context .TODO (), metaV1.ListOptions {})
432433 if err == nil {
@@ -437,6 +438,11 @@ func CleanUp() bool {
437438 errs = append (errs , err )
438439 }
439440 deploymentCount += tmp
441+ tmp , err = DeleteAllStatefulset (ns .Name )
442+ if err != nil {
443+ errs = append (errs , err )
444+ }
445+ statefulsetCount += tmp
440446 tmp , err = DeleteAllPods (ns .Name )
441447 if err != nil {
442448 errs = append (errs , err )
@@ -581,3 +587,37 @@ func DeleteAllSnapshots(nameSpace string) (int, error) {
581587 logf .Log .Info ("DeleteAllSnapshots:" , "number of Snapshot" , numSnapshots , "error" , err )
582588 return numSnapshots , err
583589}
590+
591+ func DeleteAllStatefulset (nameSpace string ) (int , error ) {
592+ logf .Log .Info ("DeleteAllStatefulset" )
593+ numStatefulsets := 0
594+
595+ statefulsets , err := gTestEnv .KubeInt .AppsV1 ().StatefulSets (nameSpace ).List (context .TODO (), metaV1.ListOptions {})
596+ if err == nil {
597+ logf .Log .Info ("DeleteAllStatefulset: found" , "sts" , statefulsets )
598+ for _ , sts := range statefulsets .Items {
599+ logf .Log .Info ("DeleteAllStatefulset: Deleting" , "statefulset" , sts .Name )
600+ delErr := gTestEnv .KubeInt .AppsV1 ().StatefulSets (nameSpace ).Delete (context .TODO (), sts .Name , metaV1.DeleteOptions {})
601+ if delErr != nil {
602+ logf .Log .Info ("DeleteAllStatefulset: failed to delete the statefulset" , "statefulset" , sts .Name , "error" , delErr )
603+ }
604+ }
605+ }
606+
607+ // Wait 2 minutes for Statefulset to be deleted
608+ for attempts := 0 ; attempts < 120 ; attempts ++ {
609+ numStatefulsets = 0
610+ statefulsets , err := ListSts (nameSpace )
611+ if err == nil {
612+ for _ , sts := range statefulsets {
613+ logf .Log .Info ("Statefulset found" , "name" , sts .Name )
614+ numStatefulsets += 1
615+ }
616+ if numStatefulsets == 0 {
617+ break
618+ }
619+ }
620+ time .Sleep (1 * time .Second )
621+ }
622+ return numStatefulsets , err
623+ }
0 commit comments