kubernetes: Serial / Flaky / Slow tests should not be marked [Conformance]
We have a new ci/pull job that runs conformance tests with a single node started using hack/local-up-cluster.sh. Comparing runs of pull-kubernetes-e2e-gce
and ci-kubernetes-local-e2e
there are a few tests that we do not run on the GCE job because they are marked as [Serial]
/ [Flaky]
/ [Slow]
.
Questions:
- Are these tests actually needed?
- Do we need a blocking pre-submit job that runs the full suite? (given that it takes time > 1 hour to run)
[dims@dims-mac 20:19] ~/Downloads ⟩ diff -Bbwu e2e-gce-2.txt e2e-local-2.txt
--- e2e-gce-2.txt 2018-04-04 20:19:18.000000000 -0400
+++ e2e-local-2.txt 2018-04-04 20:19:31.000000000 -0400
@@ -12,12 +11,14 @@
[k8s.io] Probing container should *not* be restarted with a exec "cat /tmp/health" liveness probe [Conformance]
[k8s.io] Probing container should be restarted with a /healthz http liveness probe [Conformance]
[k8s.io] Probing container should be restarted with a exec "cat /tmp/health" liveness probe [Conformance]
+[k8s.io] Probing container should have monotonically increasing restart count [Slow] [Conformance]
[k8s.io] Probing container with readiness probe should not be ready before initial delay and never restart [Conformance]
[k8s.io] Probing container with readiness probe that fails should never be ready and never restart [Conformance]
[k8s.io] Variable Expansion should allow composing env vars into new env vars [Conformance]
[k8s.io] Variable Expansion should allow substituting values in a container's args [Conformance]
[k8s.io] Variable Expansion should allow substituting values in a container's command [Conformance]
[k8s.io] [sig-node] Events should be sent by kubelets and the scheduler about pods scheduling and running [Conformance]
+[k8s.io] [sig-node] Pods Extended [k8s.io] Delete Grace Period should be submitted and removed [Flaky] [Conformance]
[k8s.io] [sig-node] Pods Extended [k8s.io] Pods Set QOS Class should be submitted and removed [Conformance]
[k8s.io] [sig-node] PreStop should call prestop when killing a pod [Conformance]
[sig-api-machinery] ConfigMap should be consumable via environment variable [Conformance]
@@ -37,6 +38,10 @@
[sig-api-machinery] Garbage collector should orphan pods created by rc if delete options say so [Conformance]
[sig-api-machinery] Secrets should be consumable from pods in env vars [Conformance]
[sig-api-machinery] Secrets should be consumable via the environment [Conformance]
+[sig-apps] Daemon set [Serial] should retry creating failed daemon pods [Conformance]
+[sig-apps] Daemon set [Serial] should run and stop complex daemon [Conformance]
+[sig-apps] Daemon set [Serial] should run and stop simple daemon [Conformance]
+[sig-apps] Daemon set [Serial] should update pod when spec was updated and update strategy is RollingUpdate [Conformance]
[sig-apps] ReplicaSet should serve a basic image on each replica with a public image [Conformance]
[sig-apps] ReplicationController should serve a basic image on each replica with a public image [Conformance]
[sig-apps] StatefulSet [k8s.io] Basic StatefulSet functionality [StatefulSetBasic] Burst scaling should run to completion even with unhealthy pods [Conformance]
@@ -81,6 +86,9 @@
[sig-network] Services should provide secure master service [Conformance]
[sig-network] Services should serve a basic endpoint from pods [Conformance]
[sig-network] Services should serve multiport endpoints from pods [Conformance]
+[sig-scheduling] SchedulerPredicates [Serial] validates resource limits of pods that are allowed to run [Conformance]
+[sig-scheduling] SchedulerPredicates [Serial] validates that NodeSelector is respected if matching [Conformance]
+[sig-scheduling] SchedulerPredicates [Serial] validates that NodeSelector is respected if not matching [Conformance]
[sig-storage] ConfigMap optional updates should be reflected in volume [Conformance]
[sig-storage] ConfigMap should be consumable from pods in volume [Conformance]
[sig-storage] ConfigMap should be consumable from pods in volume as non-root [Conformance]
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Comments: 29 (28 by maintainers)
By that I mean I’d like us to update https://github.com/kubernetes/kubernetes/blob/master/test/conformance/walk.go
I think it should reject tests that have
[Flaky]
or[Slow]
or[Feature:.*]
tagsI would code this in such a way as to anticipate more tags down the line, and warn/inform on tags that we may consider blocking on in the future but not today (eg:
[Privileged]
,[Serial]
, etc)ok, nevermind, it was quicker than I thought to list these out… instead @mgdevstack I’m curious what the impact of these tests are… how slow are they really, and do they really need to be serial?
Using junit.xml from a recent run of ci-kubernetes-gce-conformance. It will list fully expanded test names for all e2e tests, skipped or not. Then, I swear I tried to be nice and use
xpath string(//testcase/@name)
but my copy of xpath wasn’t having it. So grep/sed it is.