From 2208cb949369622f2a6f0711c72e0539048cdb81 Mon Sep 17 00:00:00 2001 From: Aravindh Puthiyaparambil Date: Fri, 8 Dec 2023 09:14:59 -0800 Subject: [PATCH] e2e: only select linux nodes for NodeLogQuery tests The current NodeLogQuery tests only work against Linux nodes, so explicitly select them. --- test/e2e/node/kubelet.go | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/test/e2e/node/kubelet.go b/test/e2e/node/kubelet.go index dfcad6f9843..ad4dda9f50f 100644 --- a/test/e2e/node/kubelet.go +++ b/test/e2e/node/kubelet.go @@ -464,8 +464,13 @@ var _ = SIGDescribe("kubelet", func() { nodes, err := e2enode.GetReadyNodesIncludingTainted(ctx, c) framework.ExpectNoError(err) if len(nodes.Items) == 0 { + framework.Fail("Expected at least one node to be present") + } + linuxNodes := getLinuxNodes(nodes) + if len(linuxNodes.Items) == 0 { framework.Fail("Expected at least one Linux node to be present") } + linuxNodeName = nodes.Items[0].Name }) @@ -579,6 +584,23 @@ var _ = SIGDescribe("kubelet", func() { }) }) +func getLinuxNodes(nodes *v1.NodeList) *v1.NodeList { + e2enode.Filter(nodes, func(node v1.Node) bool { + return isLinuxNode(&node) + }) + return nodes +} + +func isLinuxNode(node *v1.Node) bool { + if node == nil { + return false + } + if os, found := node.Labels[v1.LabelOSStable]; found { + return (os == "linux") + } + return false +} + func runKubectlCommand(cmd *exec.Cmd) (result string) { stdout, stderr, err := framework.StartCmdAndStreamOutput(cmd) var buf bytes.Buffer