Skip to content

Commit d6d7975

Browse files
committed
Fix ns teardown on SIGTERM and review comments
1 parent 701b0c2 commit d6d7975

File tree

4 files changed

+33
-28
lines changed

4 files changed

+33
-28
lines changed

test/e2e/e2e_test.go

+8-2
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,12 @@ package e2e
1919
import (
2020
"testing"
2121

22-
. "github.com/onsi/ginkgo"
22+
"github.com/onsi/ginkgo"
2323
"github.com/onsi/gomega"
2424

2525
"k8s.io/apiserver/pkg/util/logs"
2626

27+
"github.com/oracle/oci-cloud-controller-manager/test/e2e/framework"
2728
"github.com/oracle/oci-cloud-controller-manager/test/e2e/framework/ginkgowrapper"
2829
)
2930

@@ -32,5 +33,10 @@ func TestE2E(t *testing.T) {
3233
defer logs.FlushLogs()
3334

3435
gomega.RegisterFailHandler(ginkgowrapper.Fail)
35-
RunSpecs(t, "CCM E2E suite")
36+
ginkgo.RunSpecs(t, "CCM E2E suite")
3637
}
38+
39+
var _ = ginkgo.SynchronizedAfterSuite(func() {
40+
framework.Logf("Running AfterSuite actions on all node")
41+
framework.RunCleanupActions()
42+
}, func() {})

test/e2e/framework/framework.go

+23-26
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,10 @@ func (f *Framework) CreateNamespace(baseName string, labels map[string]string) (
126126
func (f *Framework) DeleteNamespace(namespace string, timeout time.Duration) error {
127127
startTime := time.Now()
128128
if err := f.ClientSet.CoreV1().Namespaces().Delete(namespace, nil); err != nil {
129+
if apierrors.IsNotFound(err) {
130+
Logf("Namespace %v was already deleted", namespace)
131+
return nil
132+
}
129133
return err
130134
}
131135

@@ -180,35 +184,28 @@ func (f *Framework) AfterEach() {
180184

181185
// DeleteNamespace at the very end in defer, to avoid any expectation
182186
// failures preventing deleting the namespace.
183-
defer func() {
184-
nsDeletionErrors := map[string]error{}
185-
186-
if deleteNamespace {
187-
// TODO: skip namespace deletion
188-
for _, ns := range f.namespacesToDelete {
189-
By(fmt.Sprintf("Destroying namespace %q for this suite.", ns.Name))
190-
if err := f.DeleteNamespace(ns.Name, 5*time.Minute); err != nil {
191-
if !apierrors.IsNotFound(err) {
192-
nsDeletionErrors[ns.Name] = err
193-
} else {
194-
Logf("Namespace %v was already deleted", ns.Name)
195-
}
196-
}
187+
nsDeletionErrors := map[string]error{}
188+
189+
if deleteNamespace {
190+
for _, ns := range f.namespacesToDelete {
191+
By(fmt.Sprintf("Destroying namespace %q for this suite.", ns.Name))
192+
if err := f.DeleteNamespace(ns.Name, 5*time.Minute); err != nil {
193+
nsDeletionErrors[ns.Name] = err
197194
}
198195
}
196+
}
199197

200-
// Paranoia -- prevent reuse!
201-
f.Namespace = nil
202-
f.ClientSet = nil
203-
f.namespacesToDelete = nil
198+
// Paranoia -- prevent reuse!
199+
f.Namespace = nil
200+
f.ClientSet = nil
201+
f.namespacesToDelete = nil
204202

205-
// if we had errors deleting, report them now.
206-
if len(nsDeletionErrors) != 0 {
207-
messages := []string{}
208-
for namespaceKey, namespaceErr := range nsDeletionErrors {
209-
messages = append(messages, fmt.Sprintf("Couldn't delete ns: %q: %s (%#v)", namespaceKey, namespaceErr, namespaceErr))
210-
}
211-
Failf(strings.Join(messages, ","))
203+
// if we had errors deleting, report them now.
204+
if len(nsDeletionErrors) != 0 {
205+
messages := []string{}
206+
for namespaceKey, namespaceErr := range nsDeletionErrors {
207+
messages = append(messages, fmt.Sprintf("Couldn't delete ns: %q: %s (%#v)", namespaceKey, namespaceErr, namespaceErr))
212208
}
213-
}()
209+
Failf(strings.Join(messages, ","))
210+
}
214211
}

test/e2e/framework/networking_utils.go

+2
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,7 @@ func TestReachableUDP(ip string, port int, request string, expect string) (bool,
190190
if err != nil {
191191
return false, fmt.Errorf("Failed to dial %s: %v", ipPort, err)
192192
}
193+
defer con.Close()
193194

194195
_, err = con.Write([]byte(fmt.Sprintf("%s\n", request)))
195196
if err != nil {
@@ -235,6 +236,7 @@ func TestNotReachableUDP(ip string, port int, request string) (bool, error) {
235236
Logf("Confirmed that %s is not reachable", uri)
236237
return true, nil
237238
}
239+
defer con.Close()
238240

239241
_, err = con.Write([]byte(fmt.Sprintf("%s\n", request)))
240242
if err != nil {
File renamed without changes.

0 commit comments

Comments
 (0)