mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 19:56:01 +00:00
Merge pull request #14476 from gmarek/framework
Add an option to modify timeout for namespace duration in e2e Framework
This commit is contained in:
commit
ec0e1faab4
@ -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)
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user