You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@yunikorn.apache.org by pb...@apache.org on 2023/10/24 12:38:41 UTC

[yunikorn-k8shim] branch master updated: [YUNIKORN-2051] fix staticcheck errors (#693)

This is an automated email from the ASF dual-hosted git repository.

pbacsko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/yunikorn-k8shim.git


The following commit(s) were added to refs/heads/master by this push:
     new d18f7c23 [YUNIKORN-2051] fix staticcheck errors (#693)
d18f7c23 is described below

commit d18f7c232df0652d08fa4960b6a6e28d8c0e6aee
Author: PoAn Yang <pa...@apache.org>
AuthorDate: Tue Oct 24 14:38:31 2023 +0200

    [YUNIKORN-2051] fix staticcheck errors (#693)
    
    Signed-off-by: PoAn Yang <pa...@apache.org>
    
    Closes: #693
    
    Signed-off-by: Peter Bacsko <pb...@cloudera.com>
---
 pkg/admission/conf/am_conf.go                      | 11 ----
 pkg/admission/webhook_manager.go                   |  1 -
 pkg/appmgmt/general/general.go                     |  4 +-
 pkg/cache/context_test.go                          |  4 +-
 pkg/cache/task_test.go                             | 65 +++++++++++-----------
 pkg/cmd/shim/main.go                               |  5 +-
 pkg/dispatcher/dispatch_test.go                    |  4 +-
 pkg/plugin/scheduler_plugin.go                     | 25 ++++-----
 .../admission_controller_suite_test.go             |  3 +-
 test/e2e/framework/helpers/common/utils.go         |  2 +-
 test/e2e/framework/helpers/k8s/k8s_utils.go        |  4 +-
 .../framework/helpers/yunikorn/rest_api_utils.go   |  2 +-
 test/e2e/framework/helpers/yunikorn/yk_utils.go    |  2 +-
 .../node_resources/node_resources_suite_test.go    |  2 -
 14 files changed, 58 insertions(+), 76 deletions(-)

diff --git a/pkg/admission/conf/am_conf.go b/pkg/admission/conf/am_conf.go
index a079369f..7b2827d8 100644
--- a/pkg/admission/conf/am_conf.go
+++ b/pkg/admission/conf/am_conf.go
@@ -397,17 +397,6 @@ func parseConfigBool(config map[string]string, key string, defaultValue bool) bo
 	return result
 }
 
-func parseConfigInt(config map[string]string, key string, defaultValue int) int {
-	value := parseConfigString(config, key, fmt.Sprintf("%d", defaultValue))
-	result, err := strconv.ParseInt(value, 10, 31)
-	if err != nil {
-		log.Log(log.AdmissionConf).Error("Unable to parse int value, using default",
-			zap.String("key", key), zap.String("value", value), zap.Int("default", defaultValue), zap.Error(err))
-		return defaultValue
-	}
-	return int(result)
-}
-
 func parseConfigString(config map[string]string, key string, defaultValue string) string {
 	if value, ok := config[key]; ok {
 		return value
diff --git a/pkg/admission/webhook_manager.go b/pkg/admission/webhook_manager.go
index 32cf5ab2..19e57efc 100644
--- a/pkg/admission/webhook_manager.go
+++ b/pkg/admission/webhook_manager.go
@@ -69,7 +69,6 @@ type WebhookManager interface {
 
 type webhookManagerImpl struct {
 	conf             *conf.AdmissionControllerConf
-	namespace        string
 	serviceName      string
 	clientset        kubernetes.Interface
 	conflictAttempts int
diff --git a/pkg/appmgmt/general/general.go b/pkg/appmgmt/general/general.go
index 181c2927..0164ce59 100644
--- a/pkg/appmgmt/general/general.go
+++ b/pkg/appmgmt/general/general.go
@@ -120,9 +120,9 @@ func getOwnerReference(pod *v1.Pod) []metav1.OwnerReference {
 
 // filter pods by scheduler name and state
 func (os *Manager) filterPods(obj interface{}) bool {
-	switch obj.(type) {
+	switch object := obj.(type) {
 	case *v1.Pod:
-		pod := obj.(*v1.Pod)
+		pod := object
 		return utils.GetApplicationIDFromPod(pod) != ""
 	default:
 		return false
diff --git a/pkg/cache/context_test.go b/pkg/cache/context_test.go
index 0a3af42d..69f69946 100644
--- a/pkg/cache/context_test.go
+++ b/pkg/cache/context_test.go
@@ -468,12 +468,12 @@ func TestUpdatePodInCache(t *testing.T) {
 
 	// ensure a terminated pod is removed
 	context.updatePodInCache(pod1, pod3)
-	found, ok := context.schedulerCache.GetPod("UID-00001")
+	_, ok = context.schedulerCache.GetPod("UID-00001")
 	assert.Check(t, !ok, "pod still found after termination")
 
 	// ensure a non-terminated pod is updated
 	context.updatePodInCache(pod1, pod2)
-	found, ok = context.schedulerCache.GetPod("UID-00001")
+	found, ok := context.schedulerCache.GetPod("UID-00001")
 	if assert.Check(t, ok, "pod not found after update") {
 		assert.Check(t, found.GetAnnotations()["test.state"] == "updated", "pod state not updated")
 	}
diff --git a/pkg/cache/task_test.go b/pkg/cache/task_test.go
index ff1cfb6f..f9b9afcb 100644
--- a/pkg/cache/task_test.go
+++ b/pkg/cache/task_test.go
@@ -28,7 +28,6 @@ import (
 	v1 "k8s.io/api/core/v1"
 	schedulingv1 "k8s.io/api/scheduling/v1"
 	"k8s.io/apimachinery/pkg/api/resource"
-	apis "k8s.io/apimachinery/pkg/apis/meta/v1"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 	k8sEvents "k8s.io/client-go/tools/events"
 
@@ -52,11 +51,11 @@ func TestTaskStateTransitions(t *testing.T) {
 		},
 	})
 	pod := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-resource-test-00001",
 			UID:  "UID-00001",
 		},
@@ -113,11 +112,11 @@ func TestTaskIllegalEventHandling(t *testing.T) {
 		},
 	})
 	pod := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-resource-test-00001",
 			UID:  "UID-00001",
 		},
@@ -164,11 +163,11 @@ func TestReleaseTaskAllocation(t *testing.T) {
 		},
 	})
 	pod := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-resource-test-00001",
 			UID:  "UID-00001",
 		},
@@ -248,11 +247,11 @@ func TestReleaseTaskAsk(t *testing.T) {
 		},
 	})
 	pod := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-resource-test-00001",
 			UID:  "UID-00001",
 		},
@@ -310,11 +309,11 @@ func TestCreateTask(t *testing.T) {
 
 	// pod has timestamp defined
 	pod0 := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name:              "pod-00",
 			UID:               "UID-00",
 			CreationTimestamp: metav1.Time{Time: time0},
@@ -323,11 +322,11 @@ func TestCreateTask(t *testing.T) {
 
 	// pod has no timestamp defined
 	pod1 := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-00",
 			UID:  "UID-00",
 		},
@@ -353,11 +352,11 @@ func TestSortTasks(t *testing.T) {
 		"bob", testGroups, map[string]string{}, mockedSchedulerAPI)
 
 	pod0 := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name:              "pod-00",
 			UID:               "UID-00",
 			CreationTimestamp: metav1.Time{Time: time0},
@@ -365,11 +364,11 @@ func TestSortTasks(t *testing.T) {
 	}
 
 	pod1 := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name:              "pod-01",
 			UID:               "UID-01",
 			CreationTimestamp: metav1.Time{Time: time1},
@@ -377,11 +376,11 @@ func TestSortTasks(t *testing.T) {
 	}
 
 	pod2 := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name:              "pod-02",
 			UID:               "UID-02",
 			CreationTimestamp: metav1.Time{Time: time2},
@@ -408,11 +407,11 @@ func TestIsTerminated(t *testing.T) {
 	app := NewApplication("app01", "root.default",
 		"bob", testGroups, map[string]string{}, mockedSchedulerAPI)
 	pod := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-01",
 			UID:  "UID-01",
 		},
@@ -435,11 +434,11 @@ func TestSetTaskGroup(t *testing.T) {
 	app := NewApplication("app01", "root.default",
 		"bob", testGroups, map[string]string{}, mockedSchedulerAPI)
 	pod := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-01",
 			UID:  "UID-01",
 		},
@@ -503,11 +502,11 @@ func TestHandleSubmitTaskEvent(t *testing.T) {
 	})
 	var priority int32 = 1000
 	pod1 := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-test-00001",
 			UID:  "UID-00001",
 		},
@@ -520,11 +519,11 @@ func TestHandleSubmitTaskEvent(t *testing.T) {
 	}
 	var priority2 int32 = 1001
 	pod2 := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-test-00002",
 			UID:  "UID-00002",
 			Annotations: map[string]string{
@@ -597,11 +596,11 @@ func TestSimultaneousTaskCompleteAndAllocate(t *testing.T) {
 	})
 
 	pod1 := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-test-00001",
 			UID:  podUID,
 		},
@@ -667,11 +666,11 @@ func TestUpdatePodCondition(t *testing.T) {
 	}
 
 	pod := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-test-00001",
 		},
 		Status: v1.PodStatus{
@@ -694,11 +693,11 @@ func TestUpdatePodCondition(t *testing.T) {
 	assert.Equal(t, v1.PodPending, task.podStatus.Phase)
 
 	podWithCondition := &v1.Pod{
-		TypeMeta: apis.TypeMeta{
+		TypeMeta: metav1.TypeMeta{
 			Kind:       "Pod",
 			APIVersion: "v1",
 		},
-		ObjectMeta: apis.ObjectMeta{
+		ObjectMeta: metav1.ObjectMeta{
 			Name: "pod-test-00001",
 		},
 		Status: v1.PodStatus{
diff --git a/pkg/cmd/shim/main.go b/pkg/cmd/shim/main.go
index d071d9fd..9f240670 100644
--- a/pkg/cmd/shim/main.go
+++ b/pkg/cmd/shim/main.go
@@ -31,7 +31,6 @@ import (
 	"github.com/apache/yunikorn-k8shim/pkg/conf"
 	"github.com/apache/yunikorn-k8shim/pkg/log"
 	"github.com/apache/yunikorn-k8shim/pkg/shim"
-	"github.com/apache/yunikorn-scheduler-interface/lib/go/api"
 )
 
 func main() {
@@ -50,8 +49,8 @@ func main() {
 	log.Log(log.Shim).Info("Starting scheduler", zap.String("name", constants.SchedulerName))
 	serviceContext := entrypoint.StartAllServicesWithLogger(log.RootLogger(), log.GetZapConfigs())
 
-	if sa, ok := serviceContext.RMProxy.(api.SchedulerAPI); ok {
-		ss := shim.NewShimScheduler(sa, conf.GetSchedulerConf(), configMaps)
+	if serviceContext.RMProxy != nil {
+		ss := shim.NewShimScheduler(serviceContext.RMProxy, conf.GetSchedulerConf(), configMaps)
 		ss.Run()
 
 		signalChan := make(chan os.Signal, 1)
diff --git a/pkg/dispatcher/dispatch_test.go b/pkg/dispatcher/dispatch_test.go
index 42d745c5..04a8e20b 100644
--- a/pkg/dispatcher/dispatch_test.go
+++ b/pkg/dispatcher/dispatch_test.go
@@ -206,9 +206,9 @@ func TestDispatchTimeout(t *testing.T) {
 	// start the handler, but waiting on a flag
 	RegisterEventHandler(EventTypeApp, func(obj interface{}) {
 		if appEvent, ok := obj.(TestAppEvent); ok {
-			fmt.Println(fmt.Sprintf("handling %s", appEvent.appID))
+			fmt.Printf("handling %s\n", appEvent.appID)
 			<-appEvent.flag
-			fmt.Println(fmt.Sprintf("handling %s DONE", appEvent.appID))
+			fmt.Printf("handling %s DONE\n", appEvent.appID)
 		}
 	})
 
diff --git a/pkg/plugin/scheduler_plugin.go b/pkg/plugin/scheduler_plugin.go
index a9e9911b..4201c6f1 100644
--- a/pkg/plugin/scheduler_plugin.go
+++ b/pkg/plugin/scheduler_plugin.go
@@ -40,7 +40,6 @@ import (
 	"github.com/apache/yunikorn-k8shim/pkg/dispatcher"
 	"github.com/apache/yunikorn-k8shim/pkg/log"
 	"github.com/apache/yunikorn-k8shim/pkg/shim"
-	"github.com/apache/yunikorn-scheduler-interface/lib/go/api"
 )
 
 const (
@@ -265,20 +264,20 @@ func NewSchedulerPlugin(_ runtime.Object, handle framework.Handle) (framework.Pl
 
 	// start the YK core scheduler
 	serviceContext := entrypoint.StartAllServicesWithLogger(log.RootLogger(), log.GetZapConfigs())
-	if sa, ok := serviceContext.RMProxy.(api.SchedulerAPI); ok {
-		// we need our own informer factory here because the informers we get from the framework handle aren't yet initialized
-		informerFactory := informers.NewSharedInformerFactory(handle.ClientSet(), 0)
-		ss := shim.NewShimSchedulerForPlugin(sa, informerFactory, conf.GetSchedulerConf(), configMaps)
-		ss.Run()
-
-		p := &YuniKornSchedulerPlugin{
-			context: ss.GetContext(),
-		}
-		events.SetRecorder(handle.EventRecorder())
-		return p, nil
+	if serviceContext.RMProxy == nil {
+		return nil, fmt.Errorf("internal error: serviceContext should implement interface api.SchedulerAPI")
 	}
 
-	return nil, fmt.Errorf("internal error: serviceContext should implement interface api.SchedulerAPI")
+	// we need our own informer factory here because the informers we get from the framework handle aren't yet initialized
+	informerFactory := informers.NewSharedInformerFactory(handle.ClientSet(), 0)
+	ss := shim.NewShimSchedulerForPlugin(serviceContext.RMProxy, informerFactory, conf.GetSchedulerConf(), configMaps)
+	ss.Run()
+
+	p := &YuniKornSchedulerPlugin{
+		context: ss.GetContext(),
+	}
+	events.SetRecorder(handle.EventRecorder())
+	return p, nil
 }
 
 func (sp *YuniKornSchedulerPlugin) getTask(appID, taskID string) (app interfaces.ManagedApp, task interfaces.ManagedTask, ok bool) {
diff --git a/test/e2e/admission_controller/admission_controller_suite_test.go b/test/e2e/admission_controller/admission_controller_suite_test.go
index 5b27064d..7f874c96 100644
--- a/test/e2e/admission_controller/admission_controller_suite_test.go
+++ b/test/e2e/admission_controller/admission_controller_suite_test.go
@@ -25,7 +25,6 @@ import (
 
 	. "github.com/onsi/ginkgo/v2"
 	"github.com/onsi/ginkgo/v2/reporters"
-	"github.com/onsi/gomega"
 	. "github.com/onsi/gomega"
 	appsv1 "k8s.io/api/apps/v1"
 	batchv1 "k8s.io/api/batch/v1"
@@ -176,7 +175,7 @@ func getPodSpec(restartPolicy v1.RestartPolicy) v1.PodTemplateSpec {
 func TestAdmissionController(t *testing.T) {
 	ReportAfterSuite("TestAdmissionController", func(report Report) {
 		err := common.CreateJUnitReportDir()
-		Ω(err).NotTo(gomega.HaveOccurred())
+		Ω(err).NotTo(HaveOccurred())
 		err = reporters.GenerateJUnitReportWithConfig(
 			report,
 			filepath.Join(configmanager.YuniKornTestConfig.LogDir, "TEST-admission_controller_junit.xml"),
diff --git a/test/e2e/framework/helpers/common/utils.go b/test/e2e/framework/helpers/common/utils.go
index 66c5c3f1..789bddde 100644
--- a/test/e2e/framework/helpers/common/utils.go
+++ b/test/e2e/framework/helpers/common/utils.go
@@ -200,7 +200,7 @@ func CompareQueueMap(a map[string]interface{}, b map[string]interface{}) (bool,
 func GetSubQueues(q map[string]interface{}) ([]map[string]interface{}, error) {
 	qs, ok := q["queues"]
 	if !ok {
-		return nil, fmt.Errorf("Invalid arguments")
+		return nil, fmt.Errorf("invalid arguments")
 	}
 
 	if qs == nil {
diff --git a/test/e2e/framework/helpers/k8s/k8s_utils.go b/test/e2e/framework/helpers/k8s/k8s_utils.go
index 742a580b..7bf20667 100644
--- a/test/e2e/framework/helpers/k8s/k8s_utils.go
+++ b/test/e2e/framework/helpers/k8s/k8s_utils.go
@@ -756,12 +756,12 @@ func (k *KubeCtl) WaitForPodCount(namespace string, wanted int, timeout time.Dur
 	return wait.PollUntilContextTimeout(context.TODO(), time.Millisecond*100, timeout, false, k.isNumPod(namespace, wanted).WithContext())
 }
 
-func (k *KubeCtl) WaitForPodStateStable(namespace string, podName string, timeout time.Duration) (error, v1.PodPhase) {
+func (k *KubeCtl) WaitForPodStateStable(namespace string, podName string, timeout time.Duration) (v1.PodPhase, error) {
 	var lastPhase v1.PodPhase
 	samePhases := 0
 
 	err := wait.PollUntilContextTimeout(context.TODO(), time.Second, timeout, false, k.isPodStable(namespace, podName, &samePhases, 3, &lastPhase).WithContext())
-	return err, lastPhase
+	return lastPhase, err
 }
 
 // Returns the list of currently scheduled or running pods in `namespace` with the given selector
diff --git a/test/e2e/framework/helpers/yunikorn/rest_api_utils.go b/test/e2e/framework/helpers/yunikorn/rest_api_utils.go
index 3487e810..972087af 100644
--- a/test/e2e/framework/helpers/yunikorn/rest_api_utils.go
+++ b/test/e2e/framework/helpers/yunikorn/rest_api_utils.go
@@ -291,7 +291,7 @@ func GetFailedHealthChecks() (string, error) {
 	var failCheck string
 	healthCheck, err := restClient.GetHealthCheck()
 	if err != nil {
-		return "", fmt.Errorf("Failed to get scheduler health check from API")
+		return "", fmt.Errorf("failed to get scheduler health check from API")
 	}
 	if !healthCheck.Healthy {
 		for _, check := range healthCheck.HealthChecks {
diff --git a/test/e2e/framework/helpers/yunikorn/yk_utils.go b/test/e2e/framework/helpers/yunikorn/yk_utils.go
index 79956738..f6a645b4 100644
--- a/test/e2e/framework/helpers/yunikorn/yk_utils.go
+++ b/test/e2e/framework/helpers/yunikorn/yk_utils.go
@@ -131,7 +131,7 @@ func RestartYunikornAndAddTolerations(kClient *k8s.KubeCtl, addTolerations bool,
 	if addTolerations {
 		schedulerPodName, err = kClient.GetSchedulerPod()
 		Ω(err).NotTo(gomega.HaveOccurred())
-		err2, ykPhase := kClient.WaitForPodStateStable(configmanager.YuniKornTestConfig.YkNamespace, schedulerPodName, 30*time.Second)
+		ykPhase, err2 := kClient.WaitForPodStateStable(configmanager.YuniKornTestConfig.YkNamespace, schedulerPodName, 30*time.Second)
 		Ω(err2).NotTo(gomega.HaveOccurred())
 		if ykPhase == v1.PodPending {
 			fmt.Fprintf(ginkgo.GinkgoWriter, "Scheduler pod is in Pending state\n")
diff --git a/test/e2e/node_resources/node_resources_suite_test.go b/test/e2e/node_resources/node_resources_suite_test.go
index dcc3c041..abef9c43 100644
--- a/test/e2e/node_resources/node_resources_suite_test.go
+++ b/test/e2e/node_resources/node_resources_suite_test.go
@@ -29,7 +29,6 @@ import (
 
 	"github.com/apache/yunikorn-k8shim/test/e2e/framework/configmanager"
 	"github.com/apache/yunikorn-k8shim/test/e2e/framework/helpers/common"
-	"github.com/apache/yunikorn-k8shim/test/e2e/framework/helpers/k8s"
 	"github.com/apache/yunikorn-k8shim/test/e2e/framework/helpers/yunikorn"
 )
 
@@ -54,7 +53,6 @@ func TestNodeResources(t *testing.T) {
 
 var oldConfigMap = new(v1.ConfigMap)
 var annotation = "ann-" + common.RandSeq(10)
-var kClient = k8s.KubeCtl{} //nolint
 
 var _ = BeforeSuite(func() {
 	annotation = "ann-" + common.RandSeq(10)


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@yunikorn.apache.org
For additional commands, e-mail: issues-help@yunikorn.apache.org