mirror of
https://github.com/k3s-io/kubernetes.git
synced 2026-07-21 17:15:35 +00:00
sched: Apply EnablePlugins to CoreResourceEnqueueTestCases
Signed-off-by: utam0k <k0ma@utam0k.jp>
This commit is contained in:
@@ -101,8 +101,9 @@ var (
|
||||
// We needed to do this because running all these test cases resulted in the timeout.
|
||||
var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
{
|
||||
Name: "Pod without a required toleration to a node isn't requeued to activeQ",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Taints([]v1.Taint{{Key: v1.TaintNodeNotReady, Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Name: "Pod without a required toleration to a node isn't requeued to activeQ",
|
||||
EnablePlugins: []string{names.TaintToleration, names.NodeResourcesFit},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Taints([]v1.Taint{{Key: v1.TaintNodeNotReady, Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 doesn't have the required toleration and will be rejected by the TaintToleration plugin.
|
||||
// (TaintToleration plugin is evaluated before NodeResourcesFit plugin.)
|
||||
@@ -122,8 +123,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod2"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the PodAffinity plugin is requeued when a new Node is created and turned to ready",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Name: "Pod rejected by the PodAffinity plugin is requeued when a new Node is created and turned to ready",
|
||||
EnablePlugins: []string{names.InterPodAffinity},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Label("anti", "anti").Name("pod1").PodAntiAffinityExists("anti", "node", st.PodAntiAffinityWithRequiredReq).Container("image").Node("fake-node").Obj(),
|
||||
},
|
||||
@@ -155,8 +157,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod2"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeAffinity plugin is requeued when a Node's label is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Label("group", "a").Obj()},
|
||||
Name: "Pod rejected by the NodeAffinity plugin is requeued when a Node's label is updated",
|
||||
EnablePlugins: []string{names.NodeAffinity},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Label("group", "a").Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 will be rejected by the NodeAffinity plugin.
|
||||
st.MakePod().Name("pod1").NodeAffinityIn("group", []string{"b"}, st.NodeSelectorTypeMatchExpressions).Container("image").Obj(),
|
||||
@@ -175,7 +178,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeAffinity plugin is not requeued when an updated Node haven't changed the 'match' verdict",
|
||||
Name: "Pod rejected by the NodeAffinity plugin is not requeued when an updated Node haven't changed the 'match' verdict",
|
||||
EnablePlugins: []string{names.NodeAffinity, names.NodeResourcesFit},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("node1").Label("group", "a").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj(),
|
||||
st.MakeNode().Name("node2").Label("group", "b").Obj()},
|
||||
@@ -196,8 +200,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeAffinity plugin is requeued when a Node is added",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Label("group", "a").Obj()},
|
||||
Name: "Pod rejected by the NodeAffinity plugin is requeued when a Node is added",
|
||||
EnablePlugins: []string{names.NodeAffinity},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Label("group", "a").Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 will be rejected by the NodeAffinity plugin.
|
||||
st.MakePod().Name("pod1").NodeAffinityIn("group", []string{"b"}, st.NodeSelectorTypeMatchExpressions).Container("image").Obj(),
|
||||
@@ -216,8 +221,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod updated with toleration requeued to activeQ",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Taints([]v1.Taint{{Key: "taint-key", Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Name: "Pod updated with toleration requeued to activeQ",
|
||||
EnablePlugins: []string{names.TaintToleration},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Taints([]v1.Taint{{Key: "taint-key", Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 doesn't have the required toleration and will be rejected by the TaintToleration plugin.
|
||||
st.MakePod().Name("pod1").Container("image").Obj(),
|
||||
@@ -234,8 +240,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the TaintToleration plugin is requeued when the Node's taint is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Taints([]v1.Taint{{Key: v1.TaintNodeNotReady, Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Name: "Pod rejected by the TaintToleration plugin is requeued when the Node's taint is updated",
|
||||
EnablePlugins: []string{names.TaintToleration},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Taints([]v1.Taint{{Key: v1.TaintNodeNotReady, Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1, pod2 and pod3 don't have the required toleration and will be rejected by the TaintToleration plugin.
|
||||
st.MakePod().Name("pod1").Toleration("taint-key").Container("image").Obj(),
|
||||
@@ -254,8 +261,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the TaintToleration plugin is requeued when a Node that has the correspoding taint is added",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Taints([]v1.Taint{{Key: v1.TaintNodeNotReady, Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Name: "Pod rejected by the TaintToleration plugin is requeued when a Node that has the correspoding taint is added",
|
||||
EnablePlugins: []string{names.TaintToleration},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Taints([]v1.Taint{{Key: v1.TaintNodeNotReady, Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 and Pod2 don't have the required toleration and will be rejected by the TaintToleration plugin.
|
||||
st.MakePod().Name("pod1").Toleration("taint-key").Container("image").Obj(),
|
||||
@@ -272,8 +280,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when the Pod is updated to scale down",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when the Pod is updated to scale down",
|
||||
EnablePlugins: []string{names.NodeResourcesFit},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 requests a large amount of CPU and will be rejected by the NodeResourcesFit plugin.
|
||||
st.MakePod().Name("pod1").Req(map[v1.ResourceName]string{v1.ResourceCPU: "4"}).Container("image").Obj(),
|
||||
@@ -289,8 +298,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Pod is deleted",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Pod is deleted",
|
||||
EnablePlugins: []string{names.NodeResourcesFit},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Req(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Container("image").Node("fake-node").Obj(),
|
||||
},
|
||||
@@ -309,8 +319,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod2"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Node is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Node is created",
|
||||
EnablePlugins: []string{names.NodeResourcesFit},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 requests a large amount of CPU and will be rejected by the NodeResourcesFit plugin.
|
||||
st.MakePod().Name("pod1").Req(map[v1.ResourceName]string{v1.ResourceCPU: "4"}).Container("image").Obj(),
|
||||
@@ -329,8 +340,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Node is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Node is updated",
|
||||
EnablePlugins: []string{names.NodeResourcesFit},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 requests a large amount of CPU and will be rejected by the NodeResourcesFit plugin.
|
||||
st.MakePod().Name("pod1").Req(map[v1.ResourceName]string{v1.ResourceCPU: "4"}).Container("image").Obj(),
|
||||
@@ -348,7 +360,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin isn't requeued when a Node is updated without increase in the requested resources",
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin isn't requeued when a Node is updated without increase in the requested resources",
|
||||
EnablePlugins: []string{names.NodeResourcesFit, names.NodeAffinity},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node1").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "4"}).Obj(),
|
||||
st.MakeNode().Name("fake-node2").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Label("group", "b").Obj(),
|
||||
@@ -368,7 +381,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Node is updated with increase in the requested resources",
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Node is updated with increase in the requested resources",
|
||||
EnablePlugins: []string{names.NodeResourcesFit, names.NodeAffinity},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node1").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "4"}).Obj(),
|
||||
st.MakeNode().Name("fake-node2").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Label("group", "b").Obj(),
|
||||
@@ -388,7 +402,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Node is updated with increase in the allowed pods number",
|
||||
Name: "Pod rejected by the NodeResourcesFit plugin is requeued when a Node is updated with increase in the allowed pods number",
|
||||
EnablePlugins: []string{names.NodeResourcesFit, names.NodeAffinity},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node1").Capacity(map[v1.ResourceName]string{v1.ResourcePods: "2"}).Obj(),
|
||||
st.MakeNode().Name("fake-node2").Capacity(map[v1.ResourceName]string{v1.ResourcePods: "1"}).Label("group", "b").Obj(),
|
||||
@@ -412,8 +427,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Updating pod label doesn't retry scheduling if the Pod was rejected by TaintToleration",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Taints([]v1.Taint{{Key: v1.TaintNodeNotReady, Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Name: "Updating pod label doesn't retry scheduling if the Pod was rejected by TaintToleration",
|
||||
EnablePlugins: []string{names.TaintToleration},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Taints([]v1.Taint{{Key: v1.TaintNodeNotReady, Effect: v1.TaintEffectNoSchedule}}).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - Pod1 doesn't have the required toleration and will be rejected by the TaintToleration plugin.
|
||||
st.MakePod().Name("pod1").Container("image").Obj(),
|
||||
@@ -433,7 +449,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
// The test case makes sure that PreFilter plugins returning PreFilterResult are also inserted into pInfo.UnschedulablePlugins
|
||||
// meaning, they're taken into consideration during requeuing flow of the queue.
|
||||
// https://github.com/kubernetes/kubernetes/issues/122018
|
||||
Name: "Pod rejected by the PreFilter of NodeAffinity plugin and Filter of NodeResourcesFit is requeued based on both plugins",
|
||||
Name: "Pod rejected by the PreFilter of NodeAffinity plugin and Filter of NodeResourcesFit is requeued based on both plugins",
|
||||
EnablePlugins: []string{names.NodeAffinity, names.NodeResourcesFit},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj(),
|
||||
st.MakeNode().Name("fake-node2").Label("node", "fake-node2").Label("zone", "zone1").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj(),
|
||||
@@ -465,8 +482,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the PodAffinity plugin is requeued when deleting the existed pod's label that matches the podAntiAffinity",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected by the InterPodAffinity plugin is requeued when deleting the existed pod's label that matches the podAntiAffinity",
|
||||
EnablePlugins: []string{names.InterPodAffinity},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Label("anti1", "anti1").Label("anti2", "anti2").Container("image").Node("fake-node").Obj(),
|
||||
},
|
||||
@@ -487,8 +505,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the PodAffinity plugin is requeued when updating the existed pod's label to make it match the pod's podAffinity",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected by the PodAffinity plugin is requeued when updating the existed pod's label to make it match the pod's podAffinity",
|
||||
EnablePlugins: []string{names.InterPodAffinity},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Container("image").Node("fake-node").Obj(),
|
||||
},
|
||||
@@ -510,8 +529,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
},
|
||||
|
||||
{
|
||||
Name: "Pod rejected by the interPodAffinity plugin is requeued when creating the node with the topologyKey label of the pod affinity",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Label("aaa", "fake-node").Obj()},
|
||||
Name: "Pod rejected by the InterPodAffinity plugin is requeued when creating the node with the topologyKey label of the pod affinity",
|
||||
EnablePlugins: []string{names.InterPodAffinity},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Label("aaa", "fake-node").Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
// - pod1 and pod2 will be rejected by the PodAffinity plugin.
|
||||
st.MakePod().Name("pod1").PodAffinityExists("bbb", "zone", st.PodAffinityWithRequiredReq).Container("image").Obj(),
|
||||
@@ -529,7 +549,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the interPodAffinity plugin is requeued when updating the node with the topologyKey label of the pod affinity",
|
||||
Name: "Pod rejected by the InterPodAffinity plugin is requeued when updating the node with the topologyKey label of the pod affinity",
|
||||
EnablePlugins: []string{names.InterPodAffinity, names.NodeAffinity},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node").Label("region", "region-1").Obj(),
|
||||
st.MakeNode().Name("fake-node2").Label("region", "region-2").Label("group", "b").Obj(),
|
||||
@@ -556,8 +577,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the interPodAffinity plugin is requeued when updating the node with the topologyKey label of the pod anti affinity",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label("service", "service-a").Label("other", "fake-node").Obj()},
|
||||
Name: "Pod rejected by the InterPodAffinity plugin is requeued when updating the node with the topologyKey label of the pod anti affinity",
|
||||
EnablePlugins: []string{names.InterPodAffinity},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label("service", "service-a").Label("other", "fake-node").Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Label("anti1", "anti1").Container("image").Node("fake-node").Obj(),
|
||||
},
|
||||
@@ -579,8 +601,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the interPodAffinity plugin is requeued when creating the node with the topologyKey label of the pod anti affinity",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Label("zone", "fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected by the InterPodAffinity plugin is requeued when creating the node with the topologyKey label of the pod anti affinity",
|
||||
EnablePlugins: []string{names.InterPodAffinity},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Label("zone", "fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Label("anti1", "anti1").Container("image").Node("fake-node1").Obj(),
|
||||
},
|
||||
@@ -600,8 +623,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with hostport by the NodePorts plugin is requeued when pod with common hostport is deleted",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with hostport by the NodePorts plugin is requeued when pod with common hostport is deleted",
|
||||
EnablePlugins: []string{names.NodePorts},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Container("image").ContainerPort([]v1.ContainerPort{{ContainerPort: 8080, HostPort: 8080}}).Node("fake-node").Obj(),
|
||||
st.MakePod().Name("pod2").Container("image").ContainerPort([]v1.ContainerPort{{ContainerPort: 8080, HostPort: 8081}}).Node("fake-node").Obj(),
|
||||
@@ -623,8 +647,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with hostport by the NodePorts plugin is requeued when new node is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with hostport by the NodePorts plugin is requeued when new node is created",
|
||||
EnablePlugins: []string{names.NodePorts},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Container("image").ContainerPort([]v1.ContainerPort{{ContainerPort: 8080, HostPort: 8080}}).Node("fake-node").Obj(),
|
||||
},
|
||||
@@ -644,8 +669,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeUnschedulable plugin is requeued when the node is turned to ready",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Unschedulable(true).Obj()},
|
||||
Name: "Pod rejected by the NodeUnschedulable plugin is requeued when the node is turned to ready",
|
||||
EnablePlugins: []string{names.NodeUnschedulable},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Unschedulable(true).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Container("image").Obj(),
|
||||
},
|
||||
@@ -660,8 +686,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeUnschedulable plugin is requeued when a new node is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Unschedulable(true).Obj()},
|
||||
Name: "Pod rejected by the NodeUnschedulable plugin is requeued when a new node is created",
|
||||
EnablePlugins: []string{names.NodeUnschedulable},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Unschedulable(true).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Container("image").Obj(),
|
||||
},
|
||||
@@ -677,8 +704,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod1"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the NodeUnschedulable plugin isn't requeued when another unschedulable node is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Unschedulable(true).Obj()},
|
||||
Name: "Pod rejected by the NodeUnschedulable plugin isn't requeued when another unschedulable node is created",
|
||||
EnablePlugins: []string{names.NodeUnschedulable},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node1").Unschedulable(true).Obj()},
|
||||
Pods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Container("image").Obj(),
|
||||
},
|
||||
@@ -696,8 +724,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Pod with matching label is scheduled",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Pod with matching label is scheduled",
|
||||
EnablePlugins: []string{names.PodTopologySpread},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Label("key1", "val").Container("image").Node("fake-node").Obj(),
|
||||
st.MakePod().Name("pod2").Label("key2", "val").Container("image").Node("fake-node").Obj(),
|
||||
@@ -721,8 +750,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pods with PodTopologySpread should be requeued when a scheduled Pod label is updated to match the selector",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Name: "Pods with PodTopologySpread should be requeued when a scheduled Pod label is updated to match the selector",
|
||||
EnablePlugins: []string{names.PodTopologySpread},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Label("key1", "val").Container("image").Node("fake-node").Obj(),
|
||||
st.MakePod().Name("pod2").Label("key2", "val").Container("image").Node("fake-node").Obj(),
|
||||
@@ -745,8 +775,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pods with PodTopologySpread should be requeued when a scheduled Pod with matching label is deleted",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
Name: "Pods with PodTopologySpread should be requeued when a scheduled Pod with matching label is deleted",
|
||||
EnablePlugins: []string{names.PodTopologySpread},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Capacity(map[v1.ResourceName]string{v1.ResourceCPU: "2"}).Obj()},
|
||||
InitialPods: []*v1.Pod{
|
||||
st.MakePod().Name("pod1").Label("key1", "val").Container("image").Node("fake-node").Obj(),
|
||||
st.MakePod().Name("pod2").Label("key2", "val").Container("image").Node("fake-node").Obj(),
|
||||
@@ -768,7 +799,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Node with topology label is created",
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Node with topology label is created",
|
||||
EnablePlugins: []string{names.PodTopologySpread},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node1").Label("node", "fake-node").Obj(),
|
||||
st.MakeNode().Name("fake-node2").Label("zone", "fake-zone").Obj(),
|
||||
@@ -795,7 +827,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Node is updated to have the topology label",
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Node is updated to have the topology label",
|
||||
EnablePlugins: []string{names.PodTopologySpread},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node1").Label("node", "fake-node").Label("region", "fake-node").Label("service", "service-a").Obj(),
|
||||
st.MakeNode().Name("fake-node2").Label("node", "fake-node").Label("region", "fake-node").Label("service", "service-a").Obj(),
|
||||
@@ -831,7 +864,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Node with a topology label is deleted (QHint: enabled)",
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Node with a topology label is deleted (QHint: enabled)",
|
||||
EnablePlugins: []string{names.PodTopologySpread},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node1").Label("node", "fake-node").Obj(),
|
||||
st.MakeNode().Name("fake-node2").Label("zone", "fake-node").Obj(),
|
||||
@@ -857,7 +891,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Node with a topology label is deleted (QHint: disabled)",
|
||||
Name: "Pods with PodTopologySpread should be requeued when a Node with a topology label is deleted (QHint: disabled)",
|
||||
EnablePlugins: []string{names.PodTopologySpread},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node1").Label("node", "fake-node").Obj(),
|
||||
st.MakeNode().Name("fake-node2").Label("zone", "fake-node").Obj(),
|
||||
@@ -883,7 +918,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(false),
|
||||
},
|
||||
{
|
||||
Name: "Pods with PodTopologySpread should be requeued when a NodeTaint of a Node with a topology label has been updated",
|
||||
Name: "Pods with PodTopologySpread should be requeued when a NodeTaint of a Node with a topology label has been updated",
|
||||
EnablePlugins: []string{names.PodTopologySpread},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node1").Label("node", "fake-node").Obj(),
|
||||
st.MakeNode().Name("fake-node2").Label("zone", "fake-node").Obj(),
|
||||
@@ -910,8 +946,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
WantRequeuedPods: sets.New("pod4"),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the PV is added",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the PV is added",
|
||||
EnablePlugins: []string{names.VolumeZone},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -958,8 +995,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the PV is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the PV is updated",
|
||||
EnablePlugins: []string{names.VolumeZone},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1013,8 +1051,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the PVC bound to the pod is added",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the PVC bound to the pod is added",
|
||||
EnablePlugins: []string{names.VolumeZone},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1064,8 +1103,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the PVC bound to the pod is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the PVC bound to the pod is updated",
|
||||
EnablePlugins: []string{names.VolumeZone},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1121,8 +1161,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the Storage class is added",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is requeued when the Storage class is added",
|
||||
EnablePlugins: []string{names.VolumeZone},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1169,8 +1210,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is not requeued when the PV is updated but the topology is same",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeZone plugin is not requeued when the PV is updated but the topology is same",
|
||||
EnablePlugins: []string{names.VolumeZone},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west1-a").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1225,8 +1267,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the VolumeRestriction plugin is requeued when the PVC bound to the pod is added",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected by the VolumeRestriction plugin is requeued when the PVC bound to the pod is added",
|
||||
EnablePlugins: []string{names.VolumeRestrictions},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1256,8 +1299,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected by the VolumeRestriction plugin is requeued when the pod is deleted",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected by the VolumeRestriction plugin is requeued when the pod is deleted",
|
||||
EnablePlugins: []string{names.VolumeRestrictions},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1292,7 +1336,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the Node is created",
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the Node is created",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-east-1b").Obj(),
|
||||
},
|
||||
@@ -1328,7 +1373,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the Node is updated",
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the Node is updated",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{
|
||||
st.MakeNode().
|
||||
Name("fake-node").
|
||||
@@ -1368,8 +1414,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the PV is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label("aaa", "bbb").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the PV is created",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label("aaa", "bbb").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1411,8 +1458,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the PV is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-east-1a").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the PV is updated",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-east-1a").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1450,8 +1498,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the PVC is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the PVC is created",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadOnlyMany}).
|
||||
@@ -1494,8 +1543,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the PVC is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the PVC is updated",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -1536,8 +1586,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the StorageClass is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the StorageClass is created",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -1571,8 +1622,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the StorageClass's AllowedTopologies is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west-1a").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the StorageClass's AllowedTopologies is updated",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west-1a").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1627,8 +1679,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is not requeued when the StorageClass is updated but the AllowedTopologies is same",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west-1c").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is not requeued when the StorageClass is updated but the AllowedTopologies is same",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Label(v1.LabelTopologyZone, "us-west-1c").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1685,8 +1738,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSINode is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSINode is created",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().
|
||||
Name("pv1").
|
||||
@@ -1716,8 +1770,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSINode's MigratedPluginsAnnotation is updated",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSINode's MigratedPluginsAnnotation is updated",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -1756,8 +1811,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSIDriver's StorageCapacity gets disabled",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSIDriver's StorageCapacity gets disabled",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -1803,8 +1859,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is not requeued when the CSIDriver is updated but the storage capacity is originally enabled",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is not requeued when the CSIDriver is updated but the storage capacity is originally enabled",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -1850,8 +1907,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSIStorageCapacity is created",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSIStorageCapacity is created",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -1888,8 +1946,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSIStorageCapacity is increased",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is requeued when the CSIStorageCapacity is increased",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -1935,8 +1994,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true, false),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is not requeued when the CSIStorageCapacity is updated but the volumelimit is not increased",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with node by the VolumeBinding plugin is not requeued when the CSIStorageCapacity is updated but the volumelimit is not increased",
|
||||
EnablePlugins: []string{names.VolumeBinding},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -1980,8 +2040,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected the CSI NodeVolumeLimits plugin is requeued when the CSINode is added",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected the CSI NodeVolumeLimits plugin is requeued when the CSINode is added",
|
||||
EnablePlugins: []string{names.NodeVolumeLimits},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -2019,8 +2080,9 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
EnableSchedulingQueueHint: sets.New(true),
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with PVC by the CSI NodeVolumeLimits plugin is requeued when the pod having related PVC is deleted",
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
Name: "Pod rejected with PVC by the CSI NodeVolumeLimits plugin is requeued when the pod having related PVC is deleted",
|
||||
EnablePlugins: []string{names.NodeVolumeLimits},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
@@ -2073,8 +2135,8 @@ var CoreResourceEnqueueTestCases = []*CoreResourceEnqueueTestCase{
|
||||
},
|
||||
{
|
||||
Name: "Pod rejected with PVC by the CSI NodeVolumeLimits plugin is requeued when the related PVC is added",
|
||||
EnablePlugins: []string{names.NodeVolumeLimits},
|
||||
InitialNodes: []*v1.Node{st.MakeNode().Name("fake-node").Label("node", "fake-node").Obj()},
|
||||
EnablePlugins: []string{"VolumeBinding"},
|
||||
InitialPVs: []*v1.PersistentVolume{
|
||||
st.MakePersistentVolume().Name("pv1").
|
||||
AccessModes([]v1.PersistentVolumeAccessMode{v1.ReadWriteMany}).
|
||||
|
||||
Reference in New Issue
Block a user