mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-04 04:08:16 +00:00 
			
		
		
		
	Add an option to modify timeout for namespace duration in e2e Framework
This commit is contained in:
		@@ -82,7 +82,7 @@ var _ = Describe("Density", func() {
 | 
			
		||||
	var additionalPodsPrefix string
 | 
			
		||||
	var ns string
 | 
			
		||||
	var uuid string
 | 
			
		||||
	framework := Framework{BaseName: "density"}
 | 
			
		||||
	framework := Framework{BaseName: "density", NamespaceDeletionTimeout: time.Hour}
 | 
			
		||||
 | 
			
		||||
	BeforeEach(func() {
 | 
			
		||||
		framework.beforeEach()
 | 
			
		||||
 
 | 
			
		||||
@@ -17,6 +17,8 @@ limitations under the License.
 | 
			
		||||
package e2e
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"k8s.io/kubernetes/pkg/api"
 | 
			
		||||
	client "k8s.io/kubernetes/pkg/client/unversioned"
 | 
			
		||||
	"k8s.io/kubernetes/pkg/util"
 | 
			
		||||
@@ -39,7 +41,7 @@ var _ = Describe("Docker Containers", func() {
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	AfterEach(func() {
 | 
			
		||||
		if err := deleteNS(c, ns); err != nil {
 | 
			
		||||
		if err := deleteNS(c, ns, 5*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
			Failf("Couldn't delete ns %s", err)
 | 
			
		||||
		}
 | 
			
		||||
	})
 | 
			
		||||
 
 | 
			
		||||
@@ -63,7 +63,7 @@ var _ = Describe("Examples e2e", func() {
 | 
			
		||||
 | 
			
		||||
	AfterEach(func() {
 | 
			
		||||
		By(fmt.Sprintf("Destroying namespace for this suite %v", ns))
 | 
			
		||||
		if err := deleteNS(c, ns); err != nil {
 | 
			
		||||
		if err := deleteNS(c, ns, 5*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
			Failf("Couldn't delete ns %s", err)
 | 
			
		||||
		}
 | 
			
		||||
	})
 | 
			
		||||
@@ -458,7 +458,7 @@ var _ = Describe("Examples e2e", func() {
 | 
			
		||||
				var err error
 | 
			
		||||
				namespaces[i], err = createTestingNS(fmt.Sprintf("dnsexample%d", i), c)
 | 
			
		||||
				if namespaces[i] != nil {
 | 
			
		||||
					defer deleteNS(c, namespaces[i].Name)
 | 
			
		||||
					defer deleteNS(c, namespaces[i].Name, 5*time.Minute /* namespace deletion timeout */)
 | 
			
		||||
				}
 | 
			
		||||
				Expect(err).NotTo(HaveOccurred())
 | 
			
		||||
			}
 | 
			
		||||
 
 | 
			
		||||
@@ -36,8 +36,9 @@ import (
 | 
			
		||||
type Framework struct {
 | 
			
		||||
	BaseName string
 | 
			
		||||
 | 
			
		||||
	Namespace *api.Namespace
 | 
			
		||||
	Client    *client.Client
 | 
			
		||||
	Namespace                *api.Namespace
 | 
			
		||||
	Client                   *client.Client
 | 
			
		||||
	NamespaceDeletionTimeout time.Duration
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// NewFramework makes a new framework and sets up a BeforeEach/AfterEach for
 | 
			
		||||
@@ -101,7 +102,11 @@ func (f *Framework) afterEach() {
 | 
			
		||||
 | 
			
		||||
	By(fmt.Sprintf("Destroying namespace %q for this suite.", f.Namespace.Name))
 | 
			
		||||
 | 
			
		||||
	if err := deleteNS(f.Client, f.Namespace.Name); err != nil {
 | 
			
		||||
	timeout := 5 * time.Minute
 | 
			
		||||
	if f.NamespaceDeletionTimeout != 0 {
 | 
			
		||||
		timeout = f.NamespaceDeletionTimeout
 | 
			
		||||
	}
 | 
			
		||||
	if err := deleteNS(f.Client, f.Namespace.Name, timeout); err != nil {
 | 
			
		||||
		Failf("Couldn't delete ns %q: %s", f.Namespace.Name, err)
 | 
			
		||||
	}
 | 
			
		||||
	// Paranoia-- prevent reuse!
 | 
			
		||||
 
 | 
			
		||||
@@ -20,6 +20,7 @@ import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"os"
 | 
			
		||||
	"path"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"k8s.io/kubernetes/pkg/api"
 | 
			
		||||
	"k8s.io/kubernetes/pkg/api/latest"
 | 
			
		||||
@@ -53,7 +54,7 @@ var _ = Describe("hostPath", func() {
 | 
			
		||||
 | 
			
		||||
	AfterEach(func() {
 | 
			
		||||
		By(fmt.Sprintf("Destroying namespace for this suite %v", namespace.Name))
 | 
			
		||||
		if err := deleteNS(c, namespace.Name); err != nil {
 | 
			
		||||
		if err := deleteNS(c, namespace.Name, 5*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
			Failf("Couldn't delete ns %s", err)
 | 
			
		||||
		}
 | 
			
		||||
	})
 | 
			
		||||
 
 | 
			
		||||
@@ -81,7 +81,7 @@ var _ = Describe("Kubectl client", func() {
 | 
			
		||||
 | 
			
		||||
	AfterEach(func() {
 | 
			
		||||
		By(fmt.Sprintf("Destroying namespace for this suite %v", ns))
 | 
			
		||||
		if err := deleteNS(c, ns); err != nil {
 | 
			
		||||
		if err := deleteNS(c, ns, 5*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
			Failf("Couldn't delete ns %s", err)
 | 
			
		||||
		}
 | 
			
		||||
	})
 | 
			
		||||
 
 | 
			
		||||
@@ -53,7 +53,7 @@ var _ = Describe("Load capacity", func() {
 | 
			
		||||
	var nodeCount int
 | 
			
		||||
	var ns string
 | 
			
		||||
	var configs []*RCConfig
 | 
			
		||||
	framework := Framework{BaseName: "density"}
 | 
			
		||||
	framework := Framework{BaseName: "load", NamespaceDeletionTimeout: time.Hour}
 | 
			
		||||
 | 
			
		||||
	BeforeEach(func() {
 | 
			
		||||
		framework.beforeEach()
 | 
			
		||||
 
 | 
			
		||||
@@ -47,7 +47,7 @@ var _ = Describe("[Skipped] persistentVolumes", func() {
 | 
			
		||||
 | 
			
		||||
	AfterEach(func() {
 | 
			
		||||
		By(fmt.Sprintf("Destroying namespace for this suite %v", ns))
 | 
			
		||||
		if err := deleteNS(c, ns); err != nil {
 | 
			
		||||
		if err := deleteNS(c, ns, 5*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
			Failf("Couldn't delete ns %s", err)
 | 
			
		||||
		}
 | 
			
		||||
	})
 | 
			
		||||
 
 | 
			
		||||
@@ -402,7 +402,7 @@ var _ = Describe("Nodes", func() {
 | 
			
		||||
			Failf("Not all nodes are ready: %v", err)
 | 
			
		||||
		}
 | 
			
		||||
		By(fmt.Sprintf("destroying namespace for this suite %s", ns))
 | 
			
		||||
		if err := deleteNS(c, ns); err != nil {
 | 
			
		||||
		if err := deleteNS(c, ns, 5*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
			Failf("Couldn't delete namespace '%s', %v", ns, err)
 | 
			
		||||
		}
 | 
			
		||||
		if err := checkTestingNSDeletedExcept(c, ""); err != nil {
 | 
			
		||||
 
 | 
			
		||||
@@ -171,7 +171,7 @@ var _ = Describe("SchedulerPredicates", func() {
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		By(fmt.Sprintf("Destroying namespace for this suite %v", ns))
 | 
			
		||||
		if err := deleteNS(c, ns); err != nil {
 | 
			
		||||
		if err := deleteNS(c, ns, 10*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
			Failf("Couldn't delete ns %s", err)
 | 
			
		||||
		}
 | 
			
		||||
	})
 | 
			
		||||
 
 | 
			
		||||
@@ -65,7 +65,7 @@ var _ = Describe("Services", func() {
 | 
			
		||||
	AfterEach(func() {
 | 
			
		||||
		for _, ns := range namespaces {
 | 
			
		||||
			By(fmt.Sprintf("Destroying namespace %v", ns))
 | 
			
		||||
			if err := deleteNS(c, ns); err != nil {
 | 
			
		||||
			if err := deleteNS(c, ns, 5*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
				Failf("Couldn't delete namespace %s: %s", ns, err)
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
@@ -531,12 +531,12 @@ func checkTestingNSDeletedExcept(c *client.Client, skip string) error {
 | 
			
		||||
 | 
			
		||||
// deleteNS deletes the provided namespace, waits for it to be completely deleted, and then checks
 | 
			
		||||
// whether there are any pods remaining in a non-terminating state.
 | 
			
		||||
func deleteNS(c *client.Client, namespace string) error {
 | 
			
		||||
func deleteNS(c *client.Client, namespace string, timeout time.Duration) error {
 | 
			
		||||
	if err := c.Namespaces().Delete(namespace); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	err := wait.Poll(5*time.Second, 5*time.Minute, func() (bool, error) {
 | 
			
		||||
	err := wait.Poll(5*time.Second, timeout, func() (bool, error) {
 | 
			
		||||
		if _, err := c.Namespaces().Get(namespace); err != nil {
 | 
			
		||||
			if apierrs.IsNotFound(err) {
 | 
			
		||||
				return true, nil
 | 
			
		||||
 
 | 
			
		||||
@@ -236,7 +236,7 @@ var _ = Describe("Volumes", func() {
 | 
			
		||||
 | 
			
		||||
	AfterEach(func() {
 | 
			
		||||
		if clean {
 | 
			
		||||
			if err := deleteNS(c, namespace.Name); err != nil {
 | 
			
		||||
			if err := deleteNS(c, namespace.Name, 5*time.Minute /* namespace deletion timeout */); err != nil {
 | 
			
		||||
				Failf("Couldn't delete ns %s", err)
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user