From cc552f2591abe07314d5510e42e1eeb6fdf4e45f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Osipiuk?= <lukaszos@google.com> Date: Thu, 16 Jan 2020 18:49:05 +0100 Subject: [PATCH] FakeNodeInfoForNodeName Change-Id: I014d46f338c3239ea1d1ce8452e0ecab8e7696bd --- .../simulator/predicates_checker_interface.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/cluster-autoscaler/simulator/predicates_checker_interface.go b/cluster-autoscaler/simulator/predicates_checker_interface.go index 63c0edeb03..ede0754285 100644 --- a/cluster-autoscaler/simulator/predicates_checker_interface.go +++ b/cluster-autoscaler/simulator/predicates_checker_interface.go @@ -18,6 +18,7 @@ package simulator import ( apiv1 "k8s.io/api/core/v1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" scheduler_nodeinfo "k8s.io/kubernetes/pkg/scheduler/nodeinfo" ) @@ -28,5 +29,19 @@ type PredicateChecker interface { // TODO drop "nodeInfos map[string]*scheduler_nodeinfo.NodeInfo" and check against schedulerLister FitsAnyNode(clusterSnapshot ClusterSnapshot, pod *apiv1.Pod, nodeInfos map[string]*scheduler_nodeinfo.NodeInfo) (string, error) // TODO replace "*scheduler_nodeinfo.NodeInfo" with node name and expect nodeInfo to be part of schedulerLister + // until then use FakeNodeInfoForNodeName when clusterSnapshot is passed CheckPredicates(clusterSnapshot ClusterSnapshot, pod *apiv1.Pod, nodeInfo *scheduler_nodeinfo.NodeInfo) PredicateError } + +// FakeNodeInfoForNodeName is used to generate fake node info which passes just a name +func FakeNodeInfoForNodeName(name string) *scheduler_nodeinfo.NodeInfo { + nodeInfo := scheduler_nodeinfo.NewNodeInfo() + node := &apiv1.Node{ + ObjectMeta: metav1.ObjectMeta{ + Name: name, + }, + } + + nodeInfo.SetNode(node) + return nodeInfo +} -- GitLab