From 9a71dfe753b4e67016f306ac18d6a27698f4517b Mon Sep 17 00:00:00 2001 From: Jay Vyas Date: Fri, 11 Mar 2016 14:29:44 -0500 Subject: [PATCH] KubeDescribe implementation with verify into after-build/ scripts. --- hack/after-build/verify-e2e.sh | 35 ++++++++++++++++++++++++ test/e2e/addon_update.go | 2 +- test/e2e/batch_v1_jobs.go | 2 +- test/e2e/cadvisor.go | 2 +- test/e2e/cluster_size_autoscaling.go | 2 +- test/e2e/cluster_upgrade.go | 6 ++-- test/e2e/configmap.go | 2 +- test/e2e/container_probe.go | 2 +- test/e2e/daemon_restart.go | 2 +- test/e2e/daemon_set.go | 2 +- test/e2e/dashboard.go | 2 +- test/e2e/density.go | 2 +- test/e2e/deployment.go | 2 +- test/e2e/dns.go | 2 +- test/e2e/docker_containers.go | 2 +- test/e2e/downward_api.go | 2 +- test/e2e/downwardapi_volume.go | 2 +- test/e2e/empty_dir.go | 2 +- test/e2e/empty_dir_wrapper.go | 2 +- test/e2e/es_cluster_logging.go | 2 +- test/e2e/etcd_failure.go | 2 +- test/e2e/events.go | 2 +- test/e2e/example_cluster_dns.go | 2 +- test/e2e/example_k8petstore.go | 2 +- test/e2e/examples.go | 22 +++++++-------- test/e2e/expansion.go | 2 +- test/e2e/framework.go | 6 ++++ test/e2e/garbage_collector.go | 2 +- test/e2e/generated_clientset.go | 2 +- test/e2e/horizontal_pod_autoscaling.go | 12 ++++---- test/e2e/host_path.go | 2 +- test/e2e/ingress.go | 2 +- test/e2e/initial_resources.go | 2 +- test/e2e/job.go | 2 +- test/e2e/kibana_logging.go | 2 +- test/e2e/kubectl.go | 38 +++++++++++++------------- test/e2e/kubelet.go | 4 +-- test/e2e/kubelet_etc_hosts.go | 2 +- test/e2e/kubelet_perf.go | 6 ++-- test/e2e/kubeproxy.go | 2 +- test/e2e/limit_range.go | 2 +- test/e2e/load.go | 2 +- test/e2e/mesos.go | 2 +- test/e2e/metrics_grabber_test.go | 2 +- test/e2e/monitoring.go | 2 +- test/e2e/namespace.go | 2 +- test/e2e/networking.go | 4 +-- test/e2e/nodeoutofdisk.go | 2 +- test/e2e/pd.go | 2 +- test/e2e/persistent_volumes.go | 2 +- test/e2e/pods.go | 2 +- test/e2e/portforward.go | 6 ++-- test/e2e/pre_stop.go | 2 +- test/e2e/privileged.go | 2 +- test/e2e/proxy.go | 2 +- test/e2e/rc.go | 2 +- test/e2e/reboot.go | 2 +- test/e2e/replica_set.go | 2 +- test/e2e/resize_nodes.go | 6 ++-- test/e2e/resource_quota.go | 2 +- test/e2e/restart.go | 2 +- test/e2e/scheduler_predicates.go | 2 +- test/e2e/secrets.go | 2 +- test/e2e/security_context.go | 2 +- test/e2e/service.go | 2 +- test/e2e/service_accounts.go | 2 +- test/e2e/service_latency.go | 2 +- test/e2e/serviceloadbalancers.go | 2 +- test/e2e/ssh.go | 2 +- test/e2e/ubernetes_lite.go | 2 +- test/e2e/volume_provisioning.go | 4 +-- test/e2e/volumes.go | 14 +++++----- 72 files changed, 160 insertions(+), 121 deletions(-) create mode 100755 hack/after-build/verify-e2e.sh diff --git a/hack/after-build/verify-e2e.sh b/hack/after-build/verify-e2e.sh new file mode 100755 index 00000000000..ace9a8609cb --- /dev/null +++ b/hack/after-build/verify-e2e.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +# Copyright 2016 The Kubernetes Authors All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Verify that E2E's use Describe wrappers, so that we can auto tag and provide +# other wrapper functionality for the entire suite. +set -o errexit +set -o nounset +set -o pipefail + +KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. +cd "${KUBE_ROOT}" + +findDescViolations() { + find ./test/e2e/ -name '*.go' | xargs cat | grep "\sDescribe(" +} + +# There should be only one call to describe. +if [ $(findDescViolations | wc -l) != 1 ]; then + echo "The following lines use Describe instead of KubeDescribe." + echo "Describe() is a reserved term which only should called via the KubeDescribe wrapper function." + findDescViolations +fi diff --git a/test/e2e/addon_update.go b/test/e2e/addon_update.go index 116485dd6b8..70bff438dc4 100644 --- a/test/e2e/addon_update.go +++ b/test/e2e/addon_update.go @@ -188,7 +188,7 @@ type stringPair struct { data, fileName string } -var _ = Describe("Addon update", func() { +var _ = KubeDescribe("Addon update", func() { var dir string var sshClient *ssh.Client diff --git a/test/e2e/batch_v1_jobs.go b/test/e2e/batch_v1_jobs.go index ee17eb33b88..b0f41cc183f 100644 --- a/test/e2e/batch_v1_jobs.go +++ b/test/e2e/batch_v1_jobs.go @@ -43,7 +43,7 @@ const ( v1JobSelectorKey = "job-name" ) -var _ = Describe("V1Job", func() { +var _ = KubeDescribe("V1Job", func() { f := NewDefaultFramework("v1job") parallelism := 2 completions := 4 diff --git a/test/e2e/cadvisor.go b/test/e2e/cadvisor.go index 749f63f2d14..6c95a3e8e02 100644 --- a/test/e2e/cadvisor.go +++ b/test/e2e/cadvisor.go @@ -31,7 +31,7 @@ const ( sleepDuration = 10 * time.Second ) -var _ = Describe("Cadvisor", func() { +var _ = KubeDescribe("Cadvisor", func() { f := NewDefaultFramework("cadvisor") diff --git a/test/e2e/cluster_size_autoscaling.go b/test/e2e/cluster_size_autoscaling.go index 193a68f9583..766631a53dd 100644 --- a/test/e2e/cluster_size_autoscaling.go +++ b/test/e2e/cluster_size_autoscaling.go @@ -37,7 +37,7 @@ const ( // run by default. // // These tests take ~20 minutes to run each. -var _ = Describe("Cluster size autoscaling [Feature:ClusterSizeAutoscaling] [Slow]", func() { +var _ = KubeDescribe("Cluster size autoscaling [Feature:ClusterSizeAutoscaling] [Slow]", func() { f := NewDefaultFramework("autoscaling") var nodeCount int var coresPerNode int diff --git a/test/e2e/cluster_upgrade.go b/test/e2e/cluster_upgrade.go index c9a6da68780..38cf4032dc6 100644 --- a/test/e2e/cluster_upgrade.go +++ b/test/e2e/cluster_upgrade.go @@ -137,7 +137,7 @@ func nodeUpgradeGKE(v string) error { return err } -var _ = Describe("Upgrade [Feature:Upgrade]", func() { +var _ = KubeDescribe("Upgrade [Feature:Upgrade]", func() { svcName, replicas := "baz", 2 var rcName, ip, v string @@ -190,7 +190,7 @@ var _ = Describe("Upgrade [Feature:Upgrade]", func() { w.Cleanup() }) - Describe("master upgrade", func() { + KubeDescribe("master upgrade", func() { It("should maintain responsive services [Feature:MasterUpgrade]", func() { By("Validating cluster before master upgrade") expectNoError(validate(f, svcName, rcName, ingress, replicas)) @@ -203,7 +203,7 @@ var _ = Describe("Upgrade [Feature:Upgrade]", func() { }) }) - Describe("node upgrade", func() { + KubeDescribe("node upgrade", func() { var tmplBefore, tmplAfter string BeforeEach(func() { if providerIs("gce") { diff --git a/test/e2e/configmap.go b/test/e2e/configmap.go index 2fba34d37b6..77dc56bd69b 100644 --- a/test/e2e/configmap.go +++ b/test/e2e/configmap.go @@ -27,7 +27,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("ConfigMap", func() { +var _ = KubeDescribe("ConfigMap", func() { f := NewDefaultFramework("configmap") diff --git a/test/e2e/container_probe.go b/test/e2e/container_probe.go index b8fa739cb49..823910e9837 100644 --- a/test/e2e/container_probe.go +++ b/test/e2e/container_probe.go @@ -35,7 +35,7 @@ const ( probTestInitialDelaySeconds = 30 ) -var _ = Describe("Probing container", func() { +var _ = KubeDescribe("Probing container", func() { framework := NewDefaultFramework("container-probe") var podClient client.PodInterface probe := webserverProbeBuilder{} diff --git a/test/e2e/daemon_restart.go b/test/e2e/daemon_restart.go index c4b7200550d..d81becd0de9 100644 --- a/test/e2e/daemon_restart.go +++ b/test/e2e/daemon_restart.go @@ -183,7 +183,7 @@ func getContainerRestarts(c *client.Client, ns string, labelSelector labels.Sele return failedContainers, containerRestartNodes.List() } -var _ = Describe("DaemonRestart [Disruptive]", func() { +var _ = KubeDescribe("DaemonRestart [Disruptive]", func() { framework := NewDefaultFramework("daemonrestart") rcName := "daemonrestart" + strconv.Itoa(numPods) + "-" + string(util.NewUUID()) diff --git a/test/e2e/daemon_set.go b/test/e2e/daemon_set.go index 3fbc521ddc3..76114b8f29f 100644 --- a/test/e2e/daemon_set.go +++ b/test/e2e/daemon_set.go @@ -53,7 +53,7 @@ const ( // happen. In the future, running in parallel may work if we have an eviction // model which lets the DS controller kick out other pods to make room. // See http://issues.k8s.io/21767 for more details -var _ = Describe("Daemon set [Serial]", func() { +var _ = KubeDescribe("Daemon set [Serial]", func() { var f *Framework AfterEach(func() { diff --git a/test/e2e/dashboard.go b/test/e2e/dashboard.go index 23360a48b9c..a369402d4c2 100644 --- a/test/e2e/dashboard.go +++ b/test/e2e/dashboard.go @@ -28,7 +28,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Kubernetes Dashboard", func() { +var _ = KubeDescribe("Kubernetes Dashboard", func() { const ( uiServiceName = "kubernetes-dashboard" uiAppName = uiServiceName diff --git a/test/e2e/density.go b/test/e2e/density.go index 530c6281481..6e544a9a4ff 100644 --- a/test/e2e/density.go +++ b/test/e2e/density.go @@ -116,7 +116,7 @@ func density30AddonResourceVerifier() map[string]resourceConstraint { // IMPORTANT: This test is designed to work on large (>= 100 Nodes) clusters. For smaller ones // results will not be representative for control-plane performance as we'll start hitting // limits on Docker's concurrent container startup. -var _ = Describe("Density", func() { +var _ = KubeDescribe("Density", func() { var c *client.Client var nodeCount int var RCName string diff --git a/test/e2e/deployment.go b/test/e2e/deployment.go index 8381cce3aee..4bd048f88db 100644 --- a/test/e2e/deployment.go +++ b/test/e2e/deployment.go @@ -46,7 +46,7 @@ const ( redisImageName = "redis" ) -var _ = Describe("Deployment", func() { +var _ = KubeDescribe("Deployment", func() { f := NewDefaultFramework("deployment") It("deployment should create new pods", func() { diff --git a/test/e2e/dns.go b/test/e2e/dns.go index 1d0e1172532..355e309b77d 100644 --- a/test/e2e/dns.go +++ b/test/e2e/dns.go @@ -249,7 +249,7 @@ func createServiceSpec(serviceName string, isHeadless bool, selector map[string] return headlessService } -var _ = Describe("DNS", func() { +var _ = KubeDescribe("DNS", func() { f := NewDefaultFramework("dns") It("should provide DNS for the cluster [Conformance]", func() { diff --git a/test/e2e/docker_containers.go b/test/e2e/docker_containers.go index 6583503f8fa..11865d7aa42 100644 --- a/test/e2e/docker_containers.go +++ b/test/e2e/docker_containers.go @@ -24,7 +24,7 @@ import ( . "github.com/onsi/ginkgo" ) -var _ = Describe("Docker Containers", func() { +var _ = KubeDescribe("Docker Containers", func() { framework := NewDefaultFramework("containers") var c *client.Client var ns string diff --git a/test/e2e/downward_api.go b/test/e2e/downward_api.go index 6ea88d3e4d6..b75b13487ec 100644 --- a/test/e2e/downward_api.go +++ b/test/e2e/downward_api.go @@ -25,7 +25,7 @@ import ( . "github.com/onsi/ginkgo" ) -var _ = Describe("Downward API", func() { +var _ = KubeDescribe("Downward API", func() { framework := NewDefaultFramework("downward-api") It("should provide pod name and namespace as env vars [Conformance]", func() { diff --git a/test/e2e/downwardapi_volume.go b/test/e2e/downwardapi_volume.go index 94e1ccb767e..916a0053f0f 100644 --- a/test/e2e/downwardapi_volume.go +++ b/test/e2e/downwardapi_volume.go @@ -27,7 +27,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Downward API volume", func() { +var _ = KubeDescribe("Downward API volume", func() { // How long to wait for a log pod to be displayed const podLogTimeout = 45 * time.Second diff --git a/test/e2e/empty_dir.go b/test/e2e/empty_dir.go index 815cbf07628..1b9bd5c21c7 100644 --- a/test/e2e/empty_dir.go +++ b/test/e2e/empty_dir.go @@ -33,7 +33,7 @@ const ( testImageNonRootUid = "gcr.io/google_containers/mounttest-user:0.3" ) -var _ = Describe("EmptyDir volumes", func() { +var _ = KubeDescribe("EmptyDir volumes", func() { f := NewDefaultFramework("emptydir") diff --git a/test/e2e/empty_dir_wrapper.go b/test/e2e/empty_dir_wrapper.go index 4579a60a98a..dd4c5532fcc 100644 --- a/test/e2e/empty_dir_wrapper.go +++ b/test/e2e/empty_dir_wrapper.go @@ -28,7 +28,7 @@ import ( // This test will create a pod with a secret volume and gitRepo volume // Thus requests a secret, a git server pod, and a git server service -var _ = Describe("EmptyDir wrapper volumes", func() { +var _ = KubeDescribe("EmptyDir wrapper volumes", func() { f := NewDefaultFramework("emptydir-wrapper") It("should becomes running", func() { diff --git a/test/e2e/es_cluster_logging.go b/test/e2e/es_cluster_logging.go index 6f6b193f272..d09339e38b3 100644 --- a/test/e2e/es_cluster_logging.go +++ b/test/e2e/es_cluster_logging.go @@ -30,7 +30,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Cluster level logging using Elasticsearch [Feature:Elasticsearch]", func() { +var _ = KubeDescribe("Cluster level logging using Elasticsearch [Feature:Elasticsearch]", func() { f := NewDefaultFramework("es-logging") BeforeEach(func() { diff --git a/test/e2e/etcd_failure.go b/test/e2e/etcd_failure.go index 37120d42840..1a9e6d35327 100644 --- a/test/e2e/etcd_failure.go +++ b/test/e2e/etcd_failure.go @@ -27,7 +27,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Etcd failure [Disruptive]", func() { +var _ = KubeDescribe("Etcd failure [Disruptive]", func() { framework := NewDefaultFramework("etcd-failure") diff --git a/test/e2e/events.go b/test/e2e/events.go index 464c69c1b1a..97e75670dec 100644 --- a/test/e2e/events.go +++ b/test/e2e/events.go @@ -31,7 +31,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Events", func() { +var _ = KubeDescribe("Events", func() { framework := NewDefaultFramework("events") It("should be sent by kubelets and the scheduler about pods scheduling and running [Conformance]", func() { diff --git a/test/e2e/example_cluster_dns.go b/test/e2e/example_cluster_dns.go index 3d43ffaee43..abb1ae4b45b 100644 --- a/test/e2e/example_cluster_dns.go +++ b/test/e2e/example_cluster_dns.go @@ -41,7 +41,7 @@ try: except: print 'err'` -var _ = Describe("ClusterDns [Feature:Example]", func() { +var _ = KubeDescribe("ClusterDns [Feature:Example]", func() { framework := NewDefaultFramework("cluster-dns") var c *client.Client diff --git a/test/e2e/example_k8petstore.go b/test/e2e/example_k8petstore.go index 9ada04a9c43..98b2758eff2 100644 --- a/test/e2e/example_k8petstore.go +++ b/test/e2e/example_k8petstore.go @@ -153,7 +153,7 @@ T: Ω(totalTransactions).Should(BeNumerically(">", finalTransactionsExpected)) } -var _ = Describe("Pet Store [Feature:Example]", func() { +var _ = KubeDescribe("Pet Store [Feature:Example]", func() { BeforeEach(func() { // The shell scripts in k8petstore break on jenkins... Pure golang rewrite is in progress. diff --git a/test/e2e/examples.go b/test/e2e/examples.go index 9b5708f2030..542e618d6bf 100644 --- a/test/e2e/examples.go +++ b/test/e2e/examples.go @@ -37,7 +37,7 @@ const ( serverStartTimeout = podStartTimeout + 3*time.Minute ) -var _ = Describe("[Feature:Example]", func() { +var _ = KubeDescribe("[Feature:Example]", func() { framework := NewDefaultFramework("examples") var c *client.Client var ns string @@ -46,7 +46,7 @@ var _ = Describe("[Feature:Example]", func() { ns = framework.Namespace.Name }) - Describe("Redis", func() { + KubeDescribe("Redis", func() { It("should create and stop redis servers", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples/redis", file) @@ -108,7 +108,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("Celery-RabbitMQ", func() { + KubeDescribe("Celery-RabbitMQ", func() { It("should create and stop celery+rabbitmq servers", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples", "celery-rabbitmq", file) @@ -151,7 +151,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("Spark", func() { + KubeDescribe("Spark", func() { It("should start spark master, driver and workers", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples", "spark", file) @@ -201,7 +201,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("Cassandra", func() { + KubeDescribe("Cassandra", func() { It("should create and scale cassandra", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples", "cassandra", file) @@ -248,7 +248,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("Storm", func() { + KubeDescribe("Storm", func() { It("should create and stop Zookeeper, Nimbus and Storm worker servers", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples", "storm", file) @@ -302,7 +302,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("Liveness", func() { + KubeDescribe("Liveness", func() { It("liveness pods should be automatically restarted", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "docs", "user-guide", "liveness", file) @@ -352,7 +352,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("Secret", func() { + KubeDescribe("Secret", func() { It("should create a pod that reads a secret", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "docs", "user-guide", "secrets", file) @@ -374,7 +374,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("Downward API", func() { + KubeDescribe("Downward API", func() { It("should create a pod that prints his name and namespace", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "docs", "user-guide", "downward-api", file) @@ -396,7 +396,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("RethinkDB", func() { + KubeDescribe("RethinkDB", func() { It("should create and stop rethinkdb servers", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples", "rethinkdb", file) @@ -438,7 +438,7 @@ var _ = Describe("[Feature:Example]", func() { }) }) - Describe("Hazelcast", func() { + KubeDescribe("Hazelcast", func() { It("should create and scale hazelcast", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples", "hazelcast", file) diff --git a/test/e2e/expansion.go b/test/e2e/expansion.go index a5a302f238a..1eecb3f9b59 100644 --- a/test/e2e/expansion.go +++ b/test/e2e/expansion.go @@ -25,7 +25,7 @@ import ( // These tests exercise the Kubernetes expansion syntax $(VAR). // For more information, see: docs/design/expansion.md -var _ = Describe("Variable Expansion", func() { +var _ = KubeDescribe("Variable Expansion", func() { framework := NewDefaultFramework("var-expansion") It("should allow composing env vars into new env vars [Conformance]", func() { diff --git a/test/e2e/framework.go b/test/e2e/framework.go index 08acc9cd99c..cb08069f9ec 100644 --- a/test/e2e/framework.go +++ b/test/e2e/framework.go @@ -413,3 +413,9 @@ func kubectlExec(namespace string, podName, containerName string, args ...string err := cmd.Run() return stdout.Bytes(), stderr.Bytes(), err } + +// Wrapper function for ginkgo describe. Adds namespacing. +// TODO: Support type safe tagging as well https://github.com/kubernetes/kubernetes/pull/22401. +func KubeDescribe(text string, body func()) bool { + return Describe("[k8s.io] "+text, body) +} diff --git a/test/e2e/garbage_collector.go b/test/e2e/garbage_collector.go index a49afb14e8b..eb8cf1fd182 100644 --- a/test/e2e/garbage_collector.go +++ b/test/e2e/garbage_collector.go @@ -30,7 +30,7 @@ import ( // This test requires that --terminated-pod-gc-threshold=100 be set on the controller manager // // Slow by design (7 min) -var _ = Describe("Garbage collector [Slow]", func() { +var _ = KubeDescribe("Garbage collector [Slow]", func() { f := NewDefaultFramework("garbage-collector") It("should handle the creation of 1000 pods", func() { SkipUnlessProviderIs("gce") diff --git a/test/e2e/generated_clientset.go b/test/e2e/generated_clientset.go index fedae634cc9..61b3baed9cf 100644 --- a/test/e2e/generated_clientset.go +++ b/test/e2e/generated_clientset.go @@ -32,7 +32,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Generated release_1_2 clientset", func() { +var _ = KubeDescribe("Generated release_1_2 clientset", func() { framework := NewDefaultFramework("clientset") It("should create pods, delete pods, watch pods", func() { podClient := framework.Clientset_1_2.Core().Pods(framework.Namespace.Name) diff --git a/test/e2e/horizontal_pod_autoscaling.go b/test/e2e/horizontal_pod_autoscaling.go index 1421f2cc8fb..064f2cfc47a 100644 --- a/test/e2e/horizontal_pod_autoscaling.go +++ b/test/e2e/horizontal_pod_autoscaling.go @@ -34,8 +34,7 @@ const ( // These tests don't seem to be running properly in parallel: issue: #20338. // - -var _ = Describe("Horizontal pod autoscaling (scale resource: CPU)", func() { +var _ = KubeDescribe("Horizontal pod autoscaling (scale resource: CPU)", func() { var rc *ResourceConsumer f := NewDefaultFramework("horizontal-pod-autoscaling") @@ -43,7 +42,7 @@ var _ = Describe("Horizontal pod autoscaling (scale resource: CPU)", func() { titleDown := "Should scale from 5 pods to 3 pods and from 3 to 1 and verify decision stability" // These tests take ~20 minutes each. - Describe("[Serial] [Slow] Deployment", func() { + KubeDescribe("[Serial] [Slow] Deployment", func() { // CPU tests via deployments It(titleUp, func() { scaleUp("test-deployment", kindDeployment, rc, f) @@ -54,7 +53,7 @@ var _ = Describe("Horizontal pod autoscaling (scale resource: CPU)", func() { }) // These tests take ~20 minutes each. - Describe("[Serial] [Slow] ReplicaSet", func() { + KubeDescribe("[Serial] [Slow] ReplicaSet", func() { // CPU tests via deployments It(titleUp, func() { scaleUp("rs", kindReplicaSet, rc, f) @@ -63,9 +62,8 @@ var _ = Describe("Horizontal pod autoscaling (scale resource: CPU)", func() { scaleDown("rs", kindReplicaSet, rc, f) }) }) - // These tests take ~20 minutes each. - Describe("[Serial] [Slow] ReplicationController", func() { + KubeDescribe("[Serial] [Slow] ReplicationController", func() { // CPU tests via replication controllers It(titleUp, func() { scaleUp("rc", kindRC, rc, f) @@ -75,7 +73,7 @@ var _ = Describe("Horizontal pod autoscaling (scale resource: CPU)", func() { }) }) - Describe("ReplicationController light", func() { + KubeDescribe("ReplicationController light", func() { It("Should scale from 1 pod to 2 pods", func() { scaleTest := &HPAScaleTest{ initPods: 1, diff --git a/test/e2e/host_path.go b/test/e2e/host_path.go index 88e66d6043c..ef7bbbbc7b4 100644 --- a/test/e2e/host_path.go +++ b/test/e2e/host_path.go @@ -31,7 +31,7 @@ import ( //TODO : Consolidate this code with the code for emptyDir. //This will require some smart. -var _ = Describe("hostPath", func() { +var _ = KubeDescribe("hostPath", func() { framework := NewDefaultFramework("hostpath") var c *client.Client var namespace *api.Namespace diff --git a/test/e2e/ingress.go b/test/e2e/ingress.go index befccdb5ef6..47e974ba44e 100644 --- a/test/e2e/ingress.go +++ b/test/e2e/ingress.go @@ -440,7 +440,7 @@ func (cont *IngressController) Cleanup(del bool) error { // test requires at least 5. // // Slow by design (10 min) -var _ = Describe("GCE L7 LoadBalancer Controller [Feature:Ingress]", func() { +var _ = KubeDescribe("GCE L7 LoadBalancer Controller [Feature:Ingress]", func() { // These variables are initialized after framework's beforeEach. var ns string var addonDir string diff --git a/test/e2e/initial_resources.go b/test/e2e/initial_resources.go index ffc3c7271af..e9b2bb47263 100644 --- a/test/e2e/initial_resources.go +++ b/test/e2e/initial_resources.go @@ -29,7 +29,7 @@ import ( // these tests are not run by default. // // Flaky issue #20272 -var _ = Describe("Initial Resources [Feature:InitialResources] [Flaky]", func() { +var _ = KubeDescribe("Initial Resources [Feature:InitialResources] [Flaky]", func() { f := NewDefaultFramework("initial-resources") It("should set initial resources based on historical data", func() { diff --git a/test/e2e/job.go b/test/e2e/job.go index 9a5189bb073..87fb829c26d 100644 --- a/test/e2e/job.go +++ b/test/e2e/job.go @@ -39,7 +39,7 @@ const ( jobSelectorKey = "job" ) -var _ = Describe("Job", func() { +var _ = KubeDescribe("Job", func() { f := NewDefaultFramework("job") parallelism := 2 completions := 4 diff --git a/test/e2e/kibana_logging.go b/test/e2e/kibana_logging.go index 6e70e7039bd..5a78ccbff5f 100644 --- a/test/e2e/kibana_logging.go +++ b/test/e2e/kibana_logging.go @@ -26,7 +26,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Kibana Logging Instances Is Alive", func() { +var _ = KubeDescribe("Kibana Logging Instances Is Alive", func() { f := NewDefaultFramework("kibana-logging") BeforeEach(func() { diff --git a/test/e2e/kubectl.go b/test/e2e/kubectl.go index c305be03aa9..7f2a13d9b19 100644 --- a/test/e2e/kubectl.go +++ b/test/e2e/kubectl.go @@ -109,7 +109,7 @@ var ( podProbeParametersVersion = version.MustParse("v1.2.0-alpha.4") ) -var _ = Describe("Kubectl client", func() { +var _ = KubeDescribe("Kubectl client", func() { defer GinkgoRecover() framework := NewDefaultFramework("kubectl") var c *client.Client @@ -119,7 +119,7 @@ var _ = Describe("Kubectl client", func() { ns = framework.Namespace.Name }) - Describe("Update Demo", func() { + KubeDescribe("Update Demo", func() { var updateDemoRoot, nautilusPath, kittenPath string BeforeEach(func() { updateDemoRoot = filepath.Join(testContext.RepoRoot, "docs/user-guide/update-demo") @@ -159,7 +159,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Guestbook application", func() { + KubeDescribe("Guestbook application", func() { var guestbookPath string BeforeEach(func() { @@ -179,7 +179,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Simple pod", func() { + KubeDescribe("Simple pod", func() { var podPath string BeforeEach(func() { @@ -525,7 +525,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl api-versions", func() { + KubeDescribe("Kubectl api-versions", func() { It("should check if v1 is in available api versions [Conformance]", func() { By("validating api verions") output := runKubectlOrDie("api-versions") @@ -535,7 +535,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl apply", func() { + KubeDescribe("Kubectl apply", func() { It("should apply a new configuration to an existing RC", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples/guestbook-go", file) @@ -554,7 +554,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl cluster-info", func() { + KubeDescribe("Kubectl cluster-info", func() { It("should check if Kubernetes master services is included in cluster-info [Conformance]", func() { By("validating cluster-info") output := runKubectlOrDie("cluster-info") @@ -571,7 +571,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl describe", func() { + KubeDescribe("Kubectl describe", func() { It("should check if kubectl describe prints relevant information for rc and pods [Conformance]", func() { SkipUnlessServerVersionGTE(nodePortsOptionalVersion, c) @@ -670,7 +670,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl expose", func() { + KubeDescribe("Kubectl expose", func() { It("should create services for rc [Conformance]", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples/guestbook-go", file) @@ -740,7 +740,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl label", func() { + KubeDescribe("Kubectl label", func() { var podPath string var nsFlag string BeforeEach(func() { @@ -776,7 +776,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl logs", func() { + KubeDescribe("Kubectl logs", func() { var rcPath string var nsFlag string containerName := "redis-master" @@ -837,7 +837,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl patch", func() { + KubeDescribe("Kubectl patch", func() { It("should add annotations for pods in rc [Conformance]", func() { mkpath := func(file string) string { return filepath.Join(testContext.RepoRoot, "examples/guestbook-go", file) @@ -866,7 +866,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl version", func() { + KubeDescribe("Kubectl version", func() { It("should check is all data is printed [Conformance]", func() { version := runKubectlOrDie("version") requiredItems := []string{"Client Version:", "Server Version:", "Major:", "Minor:", "GitCommit:"} @@ -878,7 +878,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl run default", func() { + KubeDescribe("Kubectl run default", func() { var nsFlag string var name string @@ -920,7 +920,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl run rc", func() { + KubeDescribe("Kubectl run rc", func() { var nsFlag string var rcName string @@ -974,7 +974,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl run deployment", func() { + KubeDescribe("Kubectl run deployment", func() { var nsFlag string var dName string @@ -1016,7 +1016,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl run job", func() { + KubeDescribe("Kubectl run job", func() { var nsFlag string var jobName string @@ -1068,7 +1068,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Kubectl run --rm job", func() { + KubeDescribe("Kubectl run --rm job", func() { nsFlag := fmt.Sprintf("--namespace=%v", ns) jobName := "e2e-test-rm-busybox-job" @@ -1092,7 +1092,7 @@ var _ = Describe("Kubectl client", func() { }) }) - Describe("Proxy server", func() { + KubeDescribe("Proxy server", func() { // TODO: test proxy options (static, prefix, etc) It("should support proxy with --port 0 [Conformance]", func() { By("starting the proxy server") diff --git a/test/e2e/kubelet.go b/test/e2e/kubelet.go index bfda2def36a..3b47cfdb408 100644 --- a/test/e2e/kubelet.go +++ b/test/e2e/kubelet.go @@ -86,7 +86,7 @@ func waitTillNPodsRunningOnNodes(c *client.Client, nodeNames sets.String, podNam }) } -var _ = Describe("kubelet", func() { +var _ = KubeDescribe("kubelet", func() { var numNodes int var nodeNames sets.String framework := NewDefaultFramework("kubelet") @@ -107,7 +107,7 @@ var _ = Describe("kubelet", func() { resourceMonitor.Stop() }) - Describe("Clean up pods on node", func() { + KubeDescribe("Clean up pods on node", func() { type DeleteTest struct { podsPerNode int timeout time.Duration diff --git a/test/e2e/kubelet_etc_hosts.go b/test/e2e/kubelet_etc_hosts.go index 43c0686f4d6..876c53c817f 100644 --- a/test/e2e/kubelet_etc_hosts.go +++ b/test/e2e/kubelet_etc_hosts.go @@ -40,7 +40,7 @@ type KubeletManagedHostConfig struct { f *Framework } -var _ = Describe("KubeletManagedEtcHosts", func() { +var _ = KubeDescribe("KubeletManagedEtcHosts", func() { f := NewDefaultFramework("e2e-kubelet-etc-hosts") config := &KubeletManagedHostConfig{ f: f, diff --git a/test/e2e/kubelet_perf.go b/test/e2e/kubelet_perf.go index c3de8392d22..dd7f0046b17 100644 --- a/test/e2e/kubelet_perf.go +++ b/test/e2e/kubelet_perf.go @@ -179,7 +179,7 @@ func verifyCPULimits(expected containersCPUSummary, actual nodesCPUSummary) { } // Slow by design (1 hour) -var _ = Describe("Kubelet [Serial] [Slow]", func() { +var _ = KubeDescribe("Kubelet [Serial] [Slow]", func() { var nodeNames sets.String framework := NewDefaultFramework("kubelet-perf") var rm *resourceMonitor @@ -197,7 +197,7 @@ var _ = Describe("Kubelet [Serial] [Slow]", func() { AfterEach(func() { rm.Stop() }) - Describe("regular resource usage tracking", func() { + KubeDescribe("regular resource usage tracking", func() { // We assume that the scheduler will make reasonable scheduling choices // and assign ~N pods on the node. // Although we want to track N pods per node, there are N + add-on pods @@ -248,7 +248,7 @@ var _ = Describe("Kubelet [Serial] [Slow]", func() { }) } }) - Describe("experimental resource usage tracking [Feature:ExperimentalResourceUsageTracking]", func() { + KubeDescribe("experimental resource usage tracking [Feature:ExperimentalResourceUsageTracking]", func() { density := []int{100} for i := range density { podsPerNode := density[i] diff --git a/test/e2e/kubeproxy.go b/test/e2e/kubeproxy.go index 47b21c8e5cb..2a107317c2a 100644 --- a/test/e2e/kubeproxy.go +++ b/test/e2e/kubeproxy.go @@ -69,7 +69,7 @@ type KubeProxyTestConfig struct { nodes []api.Node } -var _ = Describe("KubeProxy", func() { +var _ = KubeDescribe("KubeProxy", func() { f := NewDefaultFramework("e2e-kubeproxy") config := &KubeProxyTestConfig{ f: f, diff --git a/test/e2e/limit_range.go b/test/e2e/limit_range.go index 54feac9fdb5..e576e28e593 100644 --- a/test/e2e/limit_range.go +++ b/test/e2e/limit_range.go @@ -26,7 +26,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("LimitRange", func() { +var _ = KubeDescribe("LimitRange", func() { f := NewDefaultFramework("limitrange") It("should create a LimitRange with defaults and ensure pod has those defaults applied.", func() { diff --git a/test/e2e/load.go b/test/e2e/load.go index afb23e2356b..0f27630b353 100644 --- a/test/e2e/load.go +++ b/test/e2e/load.go @@ -47,7 +47,7 @@ const ( // the ginkgo.skip list (see driver.go). // To run this suite you must explicitly ask for it by setting the // -t/--test flag or ginkgo.focus flag. -var _ = Describe("Load capacity", func() { +var _ = KubeDescribe("Load capacity", func() { var c *client.Client var nodeCount int var ns string diff --git a/test/e2e/mesos.go b/test/e2e/mesos.go index 1332ddbe244..f15c406c00c 100644 --- a/test/e2e/mesos.go +++ b/test/e2e/mesos.go @@ -29,7 +29,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Mesos", func() { +var _ = KubeDescribe("Mesos", func() { framework := NewDefaultFramework("pods") var c *client.Client var ns string diff --git a/test/e2e/metrics_grabber_test.go b/test/e2e/metrics_grabber_test.go index 7f2b804a7ee..4d9d3826b6e 100644 --- a/test/e2e/metrics_grabber_test.go +++ b/test/e2e/metrics_grabber_test.go @@ -77,7 +77,7 @@ func checkMetrics(response metrics.Metrics, assumedMetrics map[string][]string) Expect(invalidLabels).To(BeEmpty()) } -var _ = Describe("MetricsGrabber", func() { +var _ = KubeDescribe("MetricsGrabber", func() { framework := NewDefaultFramework("metrics-grabber") var c *client.Client var grabber *metrics.MetricsGrabber diff --git a/test/e2e/monitoring.go b/test/e2e/monitoring.go index c690979a162..f206d7b7f2a 100644 --- a/test/e2e/monitoring.go +++ b/test/e2e/monitoring.go @@ -31,7 +31,7 @@ import ( . "github.com/onsi/ginkgo" ) -var _ = Describe("Monitoring", func() { +var _ = KubeDescribe("Monitoring", func() { f := NewDefaultFramework("monitoring") BeforeEach(func() { diff --git a/test/e2e/namespace.go b/test/e2e/namespace.go index 91039e2708e..4a6df5bf1d0 100644 --- a/test/e2e/namespace.go +++ b/test/e2e/namespace.go @@ -207,7 +207,7 @@ func ensureServicesAreRemovedWhenNamespaceIsDeleted(f *Framework) { // that each have a variable amount of content in the associated Namespace. // When run in [Serial] this test appears to delete Namespace objects at a // rate of approximately 1 per second. -var _ = Describe("Namespaces [Serial]", func() { +var _ = KubeDescribe("Namespaces [Serial]", func() { f := NewDefaultFramework("namespaces") diff --git a/test/e2e/networking.go b/test/e2e/networking.go index b2105b2c649..95a31d3bdbc 100644 --- a/test/e2e/networking.go +++ b/test/e2e/networking.go @@ -29,7 +29,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Networking", func() { +var _ = KubeDescribe("Networking", func() { f := NewDefaultFramework("nettest") var svcname = "nettest" @@ -213,7 +213,7 @@ var _ = Describe("Networking", func() { }) // Marked with [Flaky] until the tests prove themselves stable. - Describe("[Flaky] Granular Checks", func() { + KubeDescribe("[Flaky] Granular Checks", func() { It("should function for pod communication on a single node", func() { diff --git a/test/e2e/nodeoutofdisk.go b/test/e2e/nodeoutofdisk.go index d088211502a..22bbfc90f0f 100644 --- a/test/e2e/nodeoutofdisk.go +++ b/test/e2e/nodeoutofdisk.go @@ -64,7 +64,7 @@ const ( // 7. Observe that the pod in pending status schedules on that node. // // Flaky issue #20015. We have no clear path for how to test this functionality in a non-flaky way. -var _ = Describe("NodeOutOfDisk [Serial] [Flaky] [Disruptive]", func() { +var _ = KubeDescribe("NodeOutOfDisk [Serial] [Flaky] [Disruptive]", func() { var c *client.Client var unfilledNodeName, recoveredNodeName string framework := NewDefaultFramework("node-outofdisk") diff --git a/test/e2e/pd.go b/test/e2e/pd.go index e089a197b6e..998cc6e958b 100644 --- a/test/e2e/pd.go +++ b/test/e2e/pd.go @@ -45,7 +45,7 @@ const ( gcePDDetachPollTime = 10 * time.Second ) -var _ = Describe("Pod Disks", func() { +var _ = KubeDescribe("Pod Disks", func() { var ( podClient client.PodInterface host0Name string diff --git a/test/e2e/persistent_volumes.go b/test/e2e/persistent_volumes.go index a738dd704a0..1f34630cf0d 100644 --- a/test/e2e/persistent_volumes.go +++ b/test/e2e/persistent_volumes.go @@ -30,7 +30,7 @@ import ( // This test needs privileged containers, which are disabled by default. Run // the test with "go run hack/e2e.go ... --ginkgo.focus=[Feature:Volumes]" -var _ = Describe("PersistentVolumes [Feature:Volumes]", func() { +var _ = KubeDescribe("PersistentVolumes [Feature:Volumes]", func() { framework := NewDefaultFramework("pv") var c *client.Client var ns string diff --git a/test/e2e/pods.go b/test/e2e/pods.go index aac3413f0be..531eb788cec 100644 --- a/test/e2e/pods.go +++ b/test/e2e/pods.go @@ -205,7 +205,7 @@ func getRestartDelay(c *client.Client, pod *api.Pod, ns string, name string, con return 0, fmt.Errorf("timeout getting pod restart delay") } -var _ = Describe("Pods", func() { +var _ = KubeDescribe("Pods", func() { framework := NewDefaultFramework("pods") It("should get a host IP [Conformance]", func() { diff --git a/test/e2e/portforward.go b/test/e2e/portforward.go index 118575b6d1f..dcd95f06d98 100644 --- a/test/e2e/portforward.go +++ b/test/e2e/portforward.go @@ -110,10 +110,10 @@ func runPortForward(ns, podName string, port int) (*exec.Cmd, int) { return cmd, listenPort } -var _ = Describe("Port forwarding", func() { +var _ = KubeDescribe("Port forwarding", func() { framework := NewDefaultFramework("port-forwarding") - Describe("With a server that expects a client request", func() { + KubeDescribe("With a server that expects a client request", func() { It("should support a client that connects, sends no data, and disconnects [Conformance]", func() { By("creating the target pod") pod := pfPod("abc", "1", "1", "1") @@ -214,7 +214,7 @@ var _ = Describe("Port forwarding", func() { verifyLogMessage(logOutput, "^Done$") }) }) - Describe("With a server that expects no client request", func() { + KubeDescribe("With a server that expects no client request", func() { It("should support a client that connects, sends no data, and disconnects [Conformance]", func() { By("creating the target pod") pod := pfPod("", "10", "10", "100") diff --git a/test/e2e/pre_stop.go b/test/e2e/pre_stop.go index dcbe7141485..e200391ab99 100644 --- a/test/e2e/pre_stop.go +++ b/test/e2e/pre_stop.go @@ -158,7 +158,7 @@ func testPreStop(c *client.Client, ns string) { expectNoError(err, "validating pre-stop.") } -var _ = Describe("PreStop", func() { +var _ = KubeDescribe("PreStop", func() { f := NewDefaultFramework("prestop") It("should call prestop when killing a pod [Conformance]", func() { diff --git a/test/e2e/privileged.go b/test/e2e/privileged.go index 63beac74aec..a61189cc288 100644 --- a/test/e2e/privileged.go +++ b/test/e2e/privileged.go @@ -47,7 +47,7 @@ type PrivilegedPodTestConfig struct { hostExecPod *api.Pod } -var _ = Describe("PrivilegedPod", func() { +var _ = KubeDescribe("PrivilegedPod", func() { f := NewDefaultFramework("e2e-privilegedpod") config := &PrivilegedPodTestConfig{ f: f, diff --git a/test/e2e/proxy.go b/test/e2e/proxy.go index d67b670a0c5..9117cbfc835 100644 --- a/test/e2e/proxy.go +++ b/test/e2e/proxy.go @@ -34,7 +34,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("Proxy", func() { +var _ = KubeDescribe("Proxy", func() { version := testapi.Default.GroupVersion().Version Context("version "+version, func() { proxyContext(version) }) }) diff --git a/test/e2e/rc.go b/test/e2e/rc.go index 6383e8f0a74..9c7257b7592 100644 --- a/test/e2e/rc.go +++ b/test/e2e/rc.go @@ -29,7 +29,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("ReplicationController", func() { +var _ = KubeDescribe("ReplicationController", func() { framework := NewDefaultFramework("replication-controller") It("should serve a basic image on each replica with a public image [Conformance]", func() { diff --git a/test/e2e/reboot.go b/test/e2e/reboot.go index 9b0b9449b6b..0a6d0ef5c55 100644 --- a/test/e2e/reboot.go +++ b/test/e2e/reboot.go @@ -45,7 +45,7 @@ const ( rebootPodReadyAgainTimeout = 5 * time.Minute ) -var _ = Describe("Reboot [Disruptive] [Feature:Reboot]", func() { +var _ = KubeDescribe("Reboot [Disruptive] [Feature:Reboot]", func() { var f *Framework BeforeEach(func() { diff --git a/test/e2e/replica_set.go b/test/e2e/replica_set.go index 611abade9a4..6f69953612b 100644 --- a/test/e2e/replica_set.go +++ b/test/e2e/replica_set.go @@ -31,7 +31,7 @@ import ( . "github.com/onsi/gomega" ) -var _ = Describe("ReplicaSet", func() { +var _ = KubeDescribe("ReplicaSet", func() { framework := NewDefaultFramework("replicaset") It("should serve a basic image on each replica with a public image [Conformance]", func() { diff --git a/test/e2e/resize_nodes.go b/test/e2e/resize_nodes.go index c81f3c17ee1..9f9e1271c78 100644 --- a/test/e2e/resize_nodes.go +++ b/test/e2e/resize_nodes.go @@ -340,7 +340,7 @@ func expectNodeReadiness(isReady bool, newNode chan *api.Node) { } } -var _ = Describe("Nodes [Disruptive]", func() { +var _ = KubeDescribe("Nodes [Disruptive]", func() { framework := NewDefaultFramework("resize-nodes") var systemPodsNo int var c *client.Client @@ -354,7 +354,7 @@ var _ = Describe("Nodes [Disruptive]", func() { }) // Slow issue #13323 (8 min) - Describe("Resize [Slow]", func() { + KubeDescribe("Resize [Slow]", func() { var skipped bool BeforeEach(func() { @@ -448,7 +448,7 @@ var _ = Describe("Nodes [Disruptive]", func() { }) }) - Describe("Network", func() { + KubeDescribe("Network", func() { Context("when a node becomes unreachable", func() { BeforeEach(func() { SkipUnlessProviderIs("gce", "gke", "aws") diff --git a/test/e2e/resource_quota.go b/test/e2e/resource_quota.go index c32bb6b4485..0211ec2eb12 100644 --- a/test/e2e/resource_quota.go +++ b/test/e2e/resource_quota.go @@ -35,7 +35,7 @@ const ( resourceQuotaTimeout = 30 * time.Second ) -var _ = Describe("ResourceQuota", func() { +var _ = KubeDescribe("ResourceQuota", func() { f := NewDefaultFramework("resourcequota") It("should create a ResourceQuota and ensure its status is promptly calculated.", func() { diff --git a/test/e2e/restart.go b/test/e2e/restart.go index fcdaf4917cb..656e8b4e0b2 100644 --- a/test/e2e/restart.go +++ b/test/e2e/restart.go @@ -48,7 +48,7 @@ const ( restartPodReadyAgainTimeout = 5 * time.Minute ) -var _ = Describe("Restart [Disruptive]", func() { +var _ = KubeDescribe("Restart [Disruptive]", func() { f := NewDefaultFramework("restart") var ps *podStore diff --git a/test/e2e/scheduler_predicates.go b/test/e2e/scheduler_predicates.go index 34939be3e76..93479d567fa 100644 --- a/test/e2e/scheduler_predicates.go +++ b/test/e2e/scheduler_predicates.go @@ -140,7 +140,7 @@ func waitForStableCluster(c *client.Client) int { return len(scheduledPods) } -var _ = Describe("SchedulerPredicates [Serial]", func() { +var _ = KubeDescribe("SchedulerPredicates [Serial]", func() { var c *client.Client var nodeList *api.NodeList var systemPodsNo int diff --git a/test/e2e/secrets.go b/test/e2e/secrets.go index e1568158b90..cb915efaf62 100644 --- a/test/e2e/secrets.go +++ b/test/e2e/secrets.go @@ -25,7 +25,7 @@ import ( . "github.com/onsi/ginkgo" ) -var _ = Describe("Secrets", func() { +var _ = KubeDescribe("Secrets", func() { f := NewDefaultFramework("secrets") It("should be consumable from pods in volume [Conformance]", func() { diff --git a/test/e2e/security_context.go b/test/e2e/security_context.go index b301f8044a0..a6ec2fbdc90 100644 --- a/test/e2e/security_context.go +++ b/test/e2e/security_context.go @@ -57,7 +57,7 @@ func scTestPod(hostIPC bool, hostPID bool) *api.Pod { return pod } -var _ = Describe("Security Context [Feature:SecurityContext]", func() { +var _ = KubeDescribe("Security Context [Feature:SecurityContext]", func() { framework := NewDefaultFramework("security-context") It("should support pod.Spec.SecurityContext.SupplementalGroups", func() { diff --git a/test/e2e/service.go b/test/e2e/service.go index 11f531b9e08..36876d505a3 100644 --- a/test/e2e/service.go +++ b/test/e2e/service.go @@ -61,7 +61,7 @@ const loadBalancerCreateTimeout = 20 * time.Minute // This should match whatever the default/configured range is var ServiceNodePortRange = utilnet.PortRange{Base: 30000, Size: 2768} -var _ = Describe("Services", func() { +var _ = KubeDescribe("Services", func() { f := NewDefaultFramework("services") var c *client.Client diff --git a/test/e2e/service_accounts.go b/test/e2e/service_accounts.go index bfd3f1d171e..bf0ca0f8664 100644 --- a/test/e2e/service_accounts.go +++ b/test/e2e/service_accounts.go @@ -33,7 +33,7 @@ import ( var serviceAccountTokenNamespaceVersion = version.MustParse("v1.2.0") -var _ = Describe("ServiceAccounts", func() { +var _ = KubeDescribe("ServiceAccounts", func() { f := NewDefaultFramework("svcaccounts") It("should ensure a single API token exists", func() { diff --git a/test/e2e/service_latency.go b/test/e2e/service_latency.go index a2d356f2601..b43145680a7 100644 --- a/test/e2e/service_latency.go +++ b/test/e2e/service_latency.go @@ -39,7 +39,7 @@ func (d durations) Len() int { return len(d) } func (d durations) Less(i, j int) bool { return d[i] < d[j] } func (d durations) Swap(i, j int) { d[i], d[j] = d[j], d[i] } -var _ = Describe("Service endpoints latency", func() { +var _ = KubeDescribe("Service endpoints latency", func() { f := NewDefaultFramework("svc-latency") It("should not be very high [Conformance]", func() { diff --git a/test/e2e/serviceloadbalancers.go b/test/e2e/serviceloadbalancers.go index 1159ccf190d..b248d13394d 100644 --- a/test/e2e/serviceloadbalancers.go +++ b/test/e2e/serviceloadbalancers.go @@ -204,7 +204,7 @@ func (s *ingManager) test(path string) error { }) } -var _ = Describe("ServiceLoadBalancer [Feature:ServiceLoadBalancer]", func() { +var _ = KubeDescribe("ServiceLoadBalancer [Feature:ServiceLoadBalancer]", func() { // These variables are initialized after framework's beforeEach. var ns string var repoRoot string diff --git a/test/e2e/ssh.go b/test/e2e/ssh.go index daa97c4a9f1..d7e49afb820 100644 --- a/test/e2e/ssh.go +++ b/test/e2e/ssh.go @@ -23,7 +23,7 @@ import ( . "github.com/onsi/ginkgo" ) -var _ = Describe("SSH", func() { +var _ = KubeDescribe("SSH", func() { f := NewDefaultFramework("ssh") diff --git a/test/e2e/ubernetes_lite.go b/test/e2e/ubernetes_lite.go index 9c1cf7d13a8..262af24465b 100644 --- a/test/e2e/ubernetes_lite.go +++ b/test/e2e/ubernetes_lite.go @@ -31,7 +31,7 @@ import ( "k8s.io/kubernetes/pkg/util/sets" ) -var _ = Describe("Ubernetes Lite", func() { +var _ = KubeDescribe("Ubernetes Lite", func() { framework := NewDefaultFramework("ubernetes-lite") var zoneCount int var err error diff --git a/test/e2e/volume_provisioning.go b/test/e2e/volume_provisioning.go index c77c3ae5a13..38246be0075 100644 --- a/test/e2e/volume_provisioning.go +++ b/test/e2e/volume_provisioning.go @@ -36,7 +36,7 @@ const ( expectedSize = "2Gi" ) -var _ = Describe("Dynamic provisioning", func() { +var _ = KubeDescribe("Dynamic provisioning", func() { framework := NewDefaultFramework("volume-provisioning") // filled in BeforeEach @@ -48,7 +48,7 @@ var _ = Describe("Dynamic provisioning", func() { ns = framework.Namespace.Name }) - Describe("DynamicProvisioner", func() { + KubeDescribe("DynamicProvisioner", func() { It("should create and delete persistent volumes", func() { SkipUnlessProviderIs("openstack", "gce", "aws") By("creating a claim with a dynamic provisioning annotation") diff --git a/test/e2e/volumes.go b/test/e2e/volumes.go index c496cf6c7b1..c47bdc3bddf 100644 --- a/test/e2e/volumes.go +++ b/test/e2e/volumes.go @@ -331,7 +331,7 @@ func deleteCinderVolume(name string) error { // These tests need privileged containers, which are disabled by default. Run // the test with "go run hack/e2e.go ... --ginkgo.focus=[Feature:Volumes]" -var _ = Describe("Volumes [Feature:Volumes]", func() { +var _ = KubeDescribe("Volumes [Feature:Volumes]", func() { framework := NewDefaultFramework("volume") // If 'false', the test won't clear its volumes upon completion. Useful for debugging, @@ -350,7 +350,7 @@ var _ = Describe("Volumes [Feature:Volumes]", func() { // NFS //////////////////////////////////////////////////////////////////////// - Describe("NFS", func() { + KubeDescribe("NFS", func() { It("should be mountable", func() { config := VolumeTestConfig{ namespace: namespace.Name, @@ -384,7 +384,7 @@ var _ = Describe("Volumes [Feature:Volumes]", func() { // Gluster //////////////////////////////////////////////////////////////////////// - Describe("GlusterFS", func() { + KubeDescribe("GlusterFS", func() { It("should be mountable", func() { config := VolumeTestConfig{ namespace: namespace.Name, @@ -463,7 +463,7 @@ var _ = Describe("Volumes [Feature:Volumes]", func() { // are installed on all nodes! // Run the test with "go run hack/e2e.go ... --ginkgo.focus=iSCSI" - Describe("iSCSI", func() { + KubeDescribe("iSCSI", func() { It("should be mountable", func() { config := VolumeTestConfig{ namespace: namespace.Name, @@ -505,7 +505,7 @@ var _ = Describe("Volumes [Feature:Volumes]", func() { // Ceph RBD //////////////////////////////////////////////////////////////////////// - Describe("Ceph RBD", func() { + KubeDescribe("Ceph RBD", func() { It("should be mountable", func() { config := VolumeTestConfig{ namespace: namespace.Name, @@ -578,7 +578,7 @@ var _ = Describe("Volumes [Feature:Volumes]", func() { // Ceph //////////////////////////////////////////////////////////////////////// - Describe("CephFS", func() { + KubeDescribe("CephFS", func() { It("should be mountable", func() { config := VolumeTestConfig{ namespace: namespace.Name, @@ -649,7 +649,7 @@ var _ = Describe("Volumes [Feature:Volumes]", func() { // and that the usual OpenStack authentication env. variables are set // (OS_USERNAME, OS_PASSWORD, OS_TENANT_NAME at least). - Describe("Cinder", func() { + KubeDescribe("Cinder", func() { It("should be mountable", func() { config := VolumeTestConfig{ namespace: namespace.Name,