Change:
<!-- Please only use this template for submitting reports about continuously failing tests or jobs in Kubernetes CI --Which jobs are failing: kind serial conformance jobs Which test(s) are failing: The conformance test SchedulerPredicates [Serial] validates that taints-tolerations is respected if matching [Disruptive] [Conformance] Since when has it been failing: The test was promoted in kubernetes/kubernetes passing the kind-ipv6 job but it keeps failing after that in both ipv4 and ipv6 conformance jobs Testgrid link: https://k8s-(IPv6),%20master%20(dev) Reason for failure: Investigating Anything else we need to know: Seems the job in presubmit is not testing Serial conformance :/
/cc
/sig network These SIGs are my best guesses for this issue. Please comment if I am incorrect about one. I am a bot run by vllry. ‍
EDIT: posting GCE results because it is failing there too
/triage unresolved Comment when the issue is assessed and confirmed. I am a bot run by vllry. ‍
/retitle Failing Test: SchedulerPredicates [Serial] validates that taints-tolerations is respected if matching [Disruptive] [Conformance]
/remove-sig network /sig scheduling /area conformance
I've opened to revert

Discussion:
test/e2e/scheduling/predicates.go: "validates resource limits of pods that are allowed to run" test/e2e/scheduling/predicates.go: "validates that NodeSelector is respected if not matching" test/e2e/scheduling/predicates.go: "validates that NodeSelector is respected if matching" <del> test/e2e/scheduling/predicates.go: "validates that taints-tolerations is respected if matching" </del> test/e2e/scheduling/predicates.go: "validates that there is no conflict between pods with same hostPort but different hostIP and protocol" test/e2e/scheduling/predicates.go: "validates that there exists conflict between pods with same hostPort and protocol but one using 0.0.0.0 hostIP" test/e2e/scheduling/taints.go: "removing taint cancels eviction"

framework.ExpectEqual(labelPod.Spec.NodeName, nodeName) }) <del> /* Release : v1.18 Testname: Scheduler, taints-tolerations matching Description: Find an available node and taint it with a key with effect NoSchedule. Schedule a pod with a corresponding nodeLabel and toleration spec such that it should only be able to run on the selected node. Ensure that the pod is scheduled and running on the node. */ framework.ConformanceIt("validates that taints-tolerations is respected if matching [Disruptive]", func() { </del> <ins> // 1. Run a pod to get an available node, then delete the pod // 2. Taint the node with a random taint // 3. Try to relaunch the pod with tolerations tolerate the taints on node, // and the pod's nodeName specified to the name of node found in step 1 ginkgo.It("validates that taints-tolerations is respected if matching", func() { </ins> nodeName := getNodeThatCanRunPodWithoutToleration(f) ginkgo.By("Trying to apply a random taint on the found node.")

NodeSelector: map[string]string{labelKey: labelValue}, }) <del> framework.ExpectNoError(e2epod.WaitForPodNameRunningInNamespace(cs, ns, tolerationPodName)) </del> <ins> // check that pod got scheduled. We intentionally DO NOT check that the // pod is running because this will create a race condition with the // kubelet and the scheduler: the scheduler might have scheduled a pod // already when the kubelet does not know about its new taint yet. The // kubelet will then refuse to launch the pod. framework.ExpectNoError(e2epod.WaitForPodNotPending(cs, ns, tolerationPodName)) </ins> deployedPod, err := cs.CoreV1().Pods(ns).Get(tolerationPodName, metav1.GetOptions{}) framework.ExpectNoError(err) framework.ExpectEqual(deployedPod.Spec.NodeName, nodeName)