From 3c3a75ee54426fffbc72fbf01b8b44543fb3c903 Mon Sep 17 00:00:00 2001 From: Prabhu Jayakumar Date: Fri, 23 Oct 2020 00:23:17 +0530 Subject: [PATCH] fix(lint): Fix the lint issues discovered by golangci-lint Signed-off-by: Prabhu Jayakumar --- Makefile | 7 +++++++ cmd/manager/main.go | 4 ++-- pkg/apis/litmuschaos/v1alpha1/register.go | 2 +- .../chaosengine/chaosengine_controller.go | 15 +++++++++++---- .../chaosengine/chaosengine_controller_test.go | 10 ++++++++-- pkg/controller/resource/resource_test.go | 4 ---- pkg/controller/types/types.go | 2 +- pkg/controller/utils/volumeUtils.go | 5 ----- tests/bdd/bdd_test.go | 1 + 9 files changed, 31 insertions(+), 19 deletions(-) diff --git a/Makefile b/Makefile index 86d2ab440..aabcf1c4f 100644 --- a/Makefile +++ b/Makefile @@ -63,6 +63,13 @@ lint: @echo "------------------" @go vet $(PACKAGES) +.PHONY: ci-lint +ci-lint: + @echo "------------------" + @echo "--> Running golangci-lint" + @echo "------------------" + golangci-lint run + .PHONY: build build: @echo "------------------" diff --git a/cmd/manager/main.go b/cmd/manager/main.go index e7e7cfd72..3cea680fb 100644 --- a/cmd/manager/main.go +++ b/cmd/manager/main.go @@ -37,8 +37,8 @@ import ( "k8s.io/client-go/rest" "sigs.k8s.io/controller-runtime/pkg/client/config" "sigs.k8s.io/controller-runtime/pkg/manager" - logf "sigs.k8s.io/controller-runtime/pkg/runtime/log" - "sigs.k8s.io/controller-runtime/pkg/runtime/signals" + logf "sigs.k8s.io/controller-runtime/pkg/log" + "sigs.k8s.io/controller-runtime/pkg/manager/signals" "github.com/litmuschaos/chaos-operator/pkg/analytics" "github.com/litmuschaos/chaos-operator/pkg/apis" diff --git a/pkg/apis/litmuschaos/v1alpha1/register.go b/pkg/apis/litmuschaos/v1alpha1/register.go index 6839b1ccf..b0e826afd 100644 --- a/pkg/apis/litmuschaos/v1alpha1/register.go +++ b/pkg/apis/litmuschaos/v1alpha1/register.go @@ -23,7 +23,7 @@ package v1alpha1 import ( "k8s.io/apimachinery/pkg/runtime/schema" - "sigs.k8s.io/controller-runtime/pkg/runtime/scheme" + "sigs.k8s.io/controller-runtime/pkg/scheme" ) // GroupName is the name of api group for the custom resources diff --git a/pkg/controller/chaosengine/chaosengine_controller.go b/pkg/controller/chaosengine/chaosengine_controller.go index 7bb3b3f7f..bedb3d53e 100644 --- a/pkg/controller/chaosengine/chaosengine_controller.go +++ b/pkg/controller/chaosengine/chaosengine_controller.go @@ -514,10 +514,13 @@ func (r *ReconcileChaosEngine) updateEngineState(engine *chaosTypes.EngineInfo, } // checkRunnerContainerCompletedStatus check for the runner pod's container status for Completed -func (r *ReconcileChaosEngine) checkRunnerContainerCompletedStatus(engine *chaosTypes.EngineInfo) bool { +func (r *ReconcileChaosEngine) checkRunnerContainerCompletedStatus(engine *chaosTypes.EngineInfo) (bool, error) { runnerPod := corev1.Pod{} isCompleted := false - r.client.Get(context.TODO(), types.NamespacedName{Name: engine.Instance.Name + "-runner", Namespace: engine.Instance.Namespace}, &runnerPod) + err := r.client.Get(context.TODO(), types.NamespacedName{Name: engine.Instance.Name + "-runner", Namespace: engine.Instance.Namespace}, &runnerPod) + if err != nil { + return false, err + } if runnerPod.Status.Phase == corev1.PodRunning || runnerPod.Status.Phase == corev1.PodSucceeded { for _, container := range runnerPod.Status.ContainerStatuses { @@ -529,7 +532,7 @@ func (r *ReconcileChaosEngine) checkRunnerContainerCompletedStatus(engine *chaos } } } - return isCompleted + return isCompleted, nil } // gracefullyRemoveDefaultChaosResources removes all chaos-resources gracefully @@ -630,7 +633,11 @@ func (r *ReconcileChaosEngine) reconcileForCreationAndRunning(engine *chaosTypes return reconcile.Result{}, err } - isCompleted := r.checkRunnerContainerCompletedStatus(engine) + isCompleted, err := r.checkRunnerContainerCompletedStatus(engine) + if err != nil { + r.recorder.Eventf(engine.Instance, corev1.EventTypeWarning, "ChaosResourcesOperationFailed", "Unable to check runner container completed status") + return reconcile.Result{}, err + } if isCompleted { err := r.updateEngineForComplete(engine, isCompleted) if err != nil { diff --git a/pkg/controller/chaosengine/chaosengine_controller_test.go b/pkg/controller/chaosengine/chaosengine_controller_test.go index fd1113811..9ab714a8b 100644 --- a/pkg/controller/chaosengine/chaosengine_controller_test.go +++ b/pkg/controller/chaosengine/chaosengine_controller_test.go @@ -1065,7 +1065,10 @@ func TestCheckRunnerPodCompletedStatus(t *testing.T) { if err != nil { fmt.Printf("Unable to create engine: %v", err) } - val := r.checkRunnerContainerCompletedStatus(&mock.engine) + val, err := r.checkRunnerContainerCompletedStatus(&mock.engine) + if err != nil { + fmt.Printf("Unable to check runner container status: %v", err) + } if mock.isErr && val == false { t.Fatalf("Test %q failed: expected error not to be nil", name) } @@ -1120,7 +1123,10 @@ func TestEngineRunnerPod(t *testing.T) { t.Run(name, func(t *testing.T) { if name == "Test Positive-2" { - mock.runner.r.client.Create(context.TODO(), mock.runner.engineRunner) + err := mock.runner.r.client.Create(context.TODO(), mock.runner.engineRunner) + if err != nil { + fmt.Printf("Unable to create mock runner client: %v", err) + } } err := engineRunnerPod(mock.runner) if mock.isErr && err == nil { diff --git a/pkg/controller/resource/resource_test.go b/pkg/controller/resource/resource_test.go index 010224c29..2f21fa86d 100644 --- a/pkg/controller/resource/resource_test.go +++ b/pkg/controller/resource/resource_test.go @@ -41,10 +41,6 @@ var ( } ) -func print32(p int32) *int32 { - return &p -} - func TestCheckChaosAnnotationDeployment(t *testing.T) { tests := map[string]struct { diff --git a/pkg/controller/types/types.go b/pkg/controller/types/types.go index ebd01b8f2..eaf39d8fd 100644 --- a/pkg/controller/types/types.go +++ b/pkg/controller/types/types.go @@ -33,7 +33,7 @@ package types import ( "k8s.io/apimachinery/pkg/types" - logf "sigs.k8s.io/controller-runtime/pkg/runtime/log" + logf "sigs.k8s.io/controller-runtime/pkg/log" "github.com/litmuschaos/chaos-operator/pkg/apis/litmuschaos/v1alpha1" litmuschaosv1alpha1 "github.com/litmuschaos/chaos-operator/pkg/apis/litmuschaos/v1alpha1" diff --git a/pkg/controller/utils/volumeUtils.go b/pkg/controller/utils/volumeUtils.go index 1a10111e1..8f2e38c12 100644 --- a/pkg/controller/utils/volumeUtils.go +++ b/pkg/controller/utils/volumeUtils.go @@ -6,11 +6,6 @@ import ( corev1 "k8s.io/api/core/v1" ) -var ( - // hostpathTypeFile represents the hostpath type - hostpathTypeFile = corev1.HostPathFile -) - // CreateVolumeBuilders build Volume needed in execution of experiments func CreateVolumeBuilders(configMaps []v1alpha1.ConfigMap, secrets []v1alpha1.Secret) []*volume.Builder { volumeBuilderList := []*volume.Builder{} diff --git a/tests/bdd/bdd_test.go b/tests/bdd/bdd_test.go index 75d8c7d9c..6f7390390 100644 --- a/tests/bdd/bdd_test.go +++ b/tests/bdd/bdd_test.go @@ -75,6 +75,7 @@ var _ = BeforeSuite(func() { //Creating crds By("creating all crds") err = exec.Command("kubectl", "apply", "-f", "../../deploy/chaos_crds.yaml").Run() + Expect(err).To(BeNil()) //Creating rbacs err = exec.Command("kubectl", "apply", "-f", "../../deploy/rbac.yaml").Run()