diff --git a/pkg/controller/namespace/namespace_controller.go b/pkg/controller/namespace/namespace_controller.go index c4b85784573..1cec063f77d 100644 --- a/pkg/controller/namespace/namespace_controller.go +++ b/pkg/controller/namespace/namespace_controller.go @@ -209,6 +209,10 @@ func deleteAllContent(kubeClient client.Interface, experimentalMode bool, namesp if err != nil { return estimate, err } + err = deleteIngress(kubeClient.Experimental(), namespace) + if err != nil { + return estimate, err + } } return estimate, nil } @@ -496,3 +500,17 @@ func deleteDeployments(expClient client.ExperimentalInterface, ns string) error } return nil } + +func deleteIngress(expClient client.ExperimentalInterface, ns string) error { + items, err := expClient.Ingress(ns).List(labels.Everything(), fields.Everything()) + if err != nil { + return err + } + for i := range items.Items { + err := expClient.Ingress(ns).Delete(items.Items[i].Name, nil) + if err != nil && !errors.IsNotFound(err) { + return err + } + } + return nil +} diff --git a/pkg/controller/namespace/namespace_controller_test.go b/pkg/controller/namespace/namespace_controller_test.go index d8d7fdd85a7..d76e4cccbeb 100644 --- a/pkg/controller/namespace/namespace_controller_test.go +++ b/pkg/controller/namespace/namespace_controller_test.go @@ -114,6 +114,7 @@ func testSyncNamespaceThatIsTerminating(t *testing.T, experimentalMode bool) { strings.Join([]string{"list", "daemonsets", ""}, "-"), strings.Join([]string{"list", "deployments", ""}, "-"), strings.Join([]string{"list", "jobs", ""}, "-"), + strings.Join([]string{"list", "ingress", ""}, "-"), ) }