From 80ef874fb5556ddc7e0092f548f533db93e44a5e Mon Sep 17 00:00:00 2001 From: Ankit Jain Date: Fri, 12 Jul 2024 19:35:01 +0530 Subject: [PATCH] Enable gci, goprintffuncname, nolintlint linters (#2500) Co-authored-by: saima-s --- .golangci.yml | 20 ++++++++++++++++++- cmd/reposervercontroller/main.go | 4 +++- pkg/app/kafka.go | 8 ++++---- pkg/blockstorage/awsebs/awsebs_test.go | 3 +-- .../azure/azure_instance_metadata.go | 2 +- pkg/blockstorage/azure/azuredisk.go | 3 --- pkg/blockstorage/azure/client.go | 2 -- pkg/blueprint/validate/validate.go | 3 ++- pkg/controller/controller.go | 6 +++--- pkg/controller/controller_test.go | 3 --- pkg/customresource/customresource.go | 3 +-- pkg/function/data_test.go | 3 +-- pkg/function/e2e_volume_snapshot_test.go | 3 +-- pkg/function/kube_exec_all_test.go | 3 +-- pkg/function/kube_exec_test.go | 3 +-- pkg/function/prepare_data.go | 2 +- pkg/function/restore_csi_snapshot_test.go | 4 ++-- pkg/function/scale_test.go | 3 +-- pkg/jsonpath/jsonpath_test.go | 1 - pkg/kancontroller/kancontroller.go | 3 ++- pkg/kanctl/actionset.go | 5 ++--- pkg/kanctl/kanctl.go | 3 +-- pkg/kanctl/profile.go | 4 ++-- pkg/kanctl/secrets.go | 2 +- pkg/kando/output.go | 2 -- pkg/kopia/cli/args/ephemeral_args.go | 4 ++-- .../cli/repository/repository_connect.go | 1 - pkg/kopia/command/parse_command_output.go | 1 - pkg/kopia/repository/connect_or_create.go | 3 +-- pkg/kube/client.go | 3 ++- pkg/kube/exec_test.go | 2 +- pkg/kube/fake_pod_command_executor.go | 4 ++-- pkg/kube/log_tail_test.go | 8 ++++---- pkg/kube/pod.go | 6 +++--- pkg/kube/pod_command_executor_test.go | 4 ++-- pkg/kube/podinfo.go | 3 +-- pkg/kube/podinfo_test.go | 1 - pkg/kube/workload.go | 5 ++--- pkg/log/fluentbit.go | 2 +- pkg/log/log_test.go | 3 +-- pkg/objectstore/directory.go | 2 +- pkg/param/param_test.go | 7 +++---- pkg/resource/resource.go | 1 - pkg/testing/integration_register.go | 4 ++-- 44 files changed, 78 insertions(+), 84 deletions(-) diff --git a/.golangci.yml b/.golangci.yml index dded23b9b5..5828ccbfd6 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -24,6 +24,9 @@ linters: - importas - misspell - nestif + - gci + - goprintffuncname + - nolintlint run: timeout: 10m # golangci-lint run's timeout. @@ -32,6 +35,7 @@ run: - "integration" issues: + exclude-use-default: false exclude-rules: - path: '_test.go' linters: @@ -41,7 +45,7 @@ issues: - dupl - misspell - nestif - + - gci - text: "`ctx` is unused" # Context might not be in use in places, but for consistency, we pass it. linters: - unparam @@ -66,3 +70,17 @@ linters-settings: alias: crv1alpha1 nestif: min-complexity: 6 + gci: + sections: + - standard + - default + - prefix(github.com/kanisterio/kanister) + - blank + - dot + skip-generated: true + +exclude-dirs: + - pkg/client/applyconfiguration/cr/v1alpha1 # generated from code-gen + - pkg/client/clientset # generated from code-gen + - pkg/client/informers # generated from code-gen + - pkg/client/listers # generated from code-gen diff --git a/cmd/reposervercontroller/main.go b/cmd/reposervercontroller/main.go index 7ecd238aa6..3af8fdee24 100644 --- a/cmd/reposervercontroller/main.go +++ b/cmd/reposervercontroller/main.go @@ -27,7 +27,6 @@ import ( utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/client-go/discovery" clientgoscheme "k8s.io/client-go/kubernetes/scheme" - _ "k8s.io/client-go/plugin/pkg/client/auth" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/healthz" "sigs.k8s.io/controller-runtime/pkg/log/zap" @@ -40,7 +39,10 @@ import ( "github.com/kanisterio/kanister/pkg/log" "github.com/kanisterio/kanister/pkg/resource" "github.com/kanisterio/kanister/pkg/validatingwebhook" + //nolint:gci //+kubebuilder:scaffold:imports + + _ "k8s.io/client-go/plugin/pkg/client/auth" ) var ( diff --git a/pkg/app/kafka.go b/pkg/app/kafka.go index 512647ca39..b389ccdf97 100644 --- a/pkg/app/kafka.go +++ b/pkg/app/kafka.go @@ -500,7 +500,7 @@ func (kc *KafkaCluster) InsertRecord(ctx context.Context, namespace string) erro if resp.StatusCode != 200 { return errkit.New("Error inserting records in topic") } - defer resp.Body.Close() + defer resp.Body.Close() //nolint:errcheck bytes, err := io.ReadAll(resp.Body) if err != nil { return err @@ -617,7 +617,7 @@ func createConsumerGroup(uri string) error { // we are checking if consumer is already present and if not present it should be created return errkit.New("Error creating consumer") } - defer resp.Body.Close() + defer resp.Body.Close() //nolint:errcheck bytes, err := io.ReadAll(resp.Body) if err != nil { return err @@ -650,7 +650,7 @@ func subscribe(uri string) error { if resp.StatusCode != 204 { return errkit.New("Error subscribing to the topic") } - defer resp.Body.Close() + defer resp.Body.Close() //nolint:errcheck bytes, err := io.ReadAll(resp.Body) if err != nil { return err @@ -674,7 +674,7 @@ func consumeMessage(uri string) (int, error) { if err != nil { return 0, err } - defer resp.Body.Close() + defer resp.Body.Close() //nolint:errcheck bytes, err := io.ReadAll(resp.Body) if err != nil { return 0, err diff --git a/pkg/blockstorage/awsebs/awsebs_test.go b/pkg/blockstorage/awsebs/awsebs_test.go index eee5fdfcca..4f81adca58 100644 --- a/pkg/blockstorage/awsebs/awsebs_test.go +++ b/pkg/blockstorage/awsebs/awsebs_test.go @@ -25,9 +25,8 @@ import ( . "gopkg.in/check.v1" kaws "github.com/kanisterio/kanister/pkg/aws" - envconfig "github.com/kanisterio/kanister/pkg/config" - "github.com/kanisterio/kanister/pkg/blockstorage" + envconfig "github.com/kanisterio/kanister/pkg/config" ) // Hook up gocheck into the "go test" runner. diff --git a/pkg/blockstorage/azure/azure_instance_metadata.go b/pkg/blockstorage/azure/azure_instance_metadata.go index 1647b31631..6dafa650f6 100644 --- a/pkg/blockstorage/azure/azure_instance_metadata.go +++ b/pkg/blockstorage/azure/azure_instance_metadata.go @@ -111,6 +111,6 @@ func (i *InstanceMetadata) queryMetadataBytes(path, format string) ([]byte, erro if resp.StatusCode != http.StatusOK { return nil, errors.Errorf("Failed to get instance metadata with statusCode: %d, Path: %s", resp.StatusCode, path) } - defer resp.Body.Close() + defer resp.Body.Close() //nolint:errcheck return io.ReadAll(resp.Body) } diff --git a/pkg/blockstorage/azure/azuredisk.go b/pkg/blockstorage/azure/azuredisk.go index 7bb4aeb788..ab93b77c93 100644 --- a/pkg/blockstorage/azure/azuredisk.go +++ b/pkg/blockstorage/azure/azuredisk.go @@ -1,8 +1,5 @@ // TODO: Switch to using the latest azure sdk and remove nolint. // Related Ticket- https://github.com/kanisterio/kanister/issues/1684 -// -//nolint:staticcheck - package azure import ( diff --git a/pkg/blockstorage/azure/client.go b/pkg/blockstorage/azure/client.go index 79c5413f7d..ae8cda499e 100644 --- a/pkg/blockstorage/azure/client.go +++ b/pkg/blockstorage/azure/client.go @@ -14,8 +14,6 @@ // TODO: Switch to using the latest azure sdk and remove nolint. // Related Ticket- https://github.com/kanisterio/kanister/issues/168 -// -//nolint:staticcheck package azure import ( diff --git a/pkg/blueprint/validate/validate.go b/pkg/blueprint/validate/validate.go index 16f92d009c..1e4a79e469 100644 --- a/pkg/blueprint/validate/validate.go +++ b/pkg/blueprint/validate/validate.go @@ -21,9 +21,10 @@ import ( kanister "github.com/kanisterio/kanister/pkg" crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" - _ "github.com/kanisterio/kanister/pkg/function" "github.com/kanisterio/kanister/pkg/param" "github.com/kanisterio/kanister/pkg/utils" + + _ "github.com/kanisterio/kanister/pkg/function" ) const ( diff --git a/pkg/controller/controller.go b/pkg/controller/controller.go index 5e0a8f3190..c44d022d03 100644 --- a/pkg/controller/controller.go +++ b/pkg/controller/controller.go @@ -27,6 +27,7 @@ import ( "strings" "sync" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" "github.com/pkg/errors" "github.com/prometheus/client_golang/prometheus" "gopkg.in/tomb.v2" @@ -40,8 +41,6 @@ import ( "k8s.io/client-go/tools/record" "k8s.io/client-go/tools/reference" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - kanister "github.com/kanisterio/kanister/pkg" crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" "github.com/kanisterio/kanister/pkg/client/clientset/versioned" @@ -51,11 +50,12 @@ import ( "github.com/kanisterio/kanister/pkg/eventer" "github.com/kanisterio/kanister/pkg/field" "github.com/kanisterio/kanister/pkg/log" - _ "github.com/kanisterio/kanister/pkg/metrics" "github.com/kanisterio/kanister/pkg/param" "github.com/kanisterio/kanister/pkg/progress" "github.com/kanisterio/kanister/pkg/reconcile" "github.com/kanisterio/kanister/pkg/validate" + + _ "github.com/kanisterio/kanister/pkg/metrics" ) // Controller represents a controller object for kanister custom resources diff --git a/pkg/controller/controller_test.go b/pkg/controller/controller_test.go index 1a6722788c..00b5d684e3 100644 --- a/pkg/controller/controller_test.go +++ b/pkg/controller/controller_test.go @@ -153,7 +153,6 @@ func (s *ControllerSuite) TestWatch(c *C) { time.Sleep(5 * time.Second) } -//nolint:unparam func (s *ControllerSuite) waitOnActionSetState(c *C, as *crv1alpha1.ActionSet, state crv1alpha1.State) error { ctx, cancel := context.WithTimeout(context.Background(), 40*time.Second) defer cancel() @@ -180,7 +179,6 @@ func (s *ControllerSuite) waitOnActionSetState(c *C, as *crv1alpha1.ActionSet, s return errors.Wrapf(err, "State '%s' never reached", state) } -//nolint:unparam func (s *ControllerSuite) waitOnDeferPhaseState(c *C, as *crv1alpha1.ActionSet, state crv1alpha1.State) error { ctx, cancel := context.WithTimeout(context.Background(), 1*time.Minute) defer cancel() @@ -206,7 +204,6 @@ func (s *ControllerSuite) waitOnDeferPhaseState(c *C, as *crv1alpha1.ActionSet, return errors.Wrapf(err, "State '%s' never reached", state) } -//nolint:unparam func (s *ControllerSuite) waitOnActionSetCompleteWithRunningPhases(as *crv1alpha1.ActionSet, rp *sets.Set[string]) error { ctx, cancel := context.WithTimeout(context.Background(), 120*time.Second) defer cancel() diff --git a/pkg/customresource/customresource.go b/pkg/customresource/customresource.go index 86c9d5ea2a..71e66731d9 100644 --- a/pkg/customresource/customresource.go +++ b/pkg/customresource/customresource.go @@ -32,8 +32,7 @@ import ( "k8s.io/client-go/kubernetes" "k8s.io/client-go/util/retry" - // importing go check to bypass the testing flags - _ "gopkg.in/check.v1" + _ "gopkg.in/check.v1" // importing go check to bypass the testing flags ) const serverVersionV170 = "v1.7.0" diff --git a/pkg/function/data_test.go b/pkg/function/data_test.go index 20ee6c8901..6276c188d7 100644 --- a/pkg/function/data_test.go +++ b/pkg/function/data_test.go @@ -20,6 +20,7 @@ import ( "fmt" "os" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" . "gopkg.in/check.v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -27,8 +28,6 @@ import ( "k8s.io/client-go/kubernetes" k8sscheme "k8s.io/client-go/kubernetes/scheme" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - kanister "github.com/kanisterio/kanister/pkg" crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" "github.com/kanisterio/kanister/pkg/client/clientset/versioned" diff --git a/pkg/function/e2e_volume_snapshot_test.go b/pkg/function/e2e_volume_snapshot_test.go index bf81908179..641cb23918 100644 --- a/pkg/function/e2e_volume_snapshot_test.go +++ b/pkg/function/e2e_volume_snapshot_test.go @@ -19,6 +19,7 @@ import ( "os" "strings" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" "golang.org/x/oauth2/google" "google.golang.org/api/compute/v1" . "gopkg.in/check.v1" @@ -30,8 +31,6 @@ import ( "k8s.io/client-go/kubernetes" k8sscheme "k8s.io/client-go/kubernetes/scheme" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - kanister "github.com/kanisterio/kanister/pkg" crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" awsconfig "github.com/kanisterio/kanister/pkg/aws" diff --git a/pkg/function/kube_exec_all_test.go b/pkg/function/kube_exec_all_test.go index 98f73fbf0c..4f398d3fa0 100644 --- a/pkg/function/kube_exec_all_test.go +++ b/pkg/function/kube_exec_all_test.go @@ -18,6 +18,7 @@ import ( "context" "fmt" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" . "gopkg.in/check.v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -25,8 +26,6 @@ import ( "k8s.io/client-go/kubernetes" k8sscheme "k8s.io/client-go/kubernetes/scheme" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - kanister "github.com/kanisterio/kanister/pkg" crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" "github.com/kanisterio/kanister/pkg/client/clientset/versioned" diff --git a/pkg/function/kube_exec_test.go b/pkg/function/kube_exec_test.go index 86c0e090df..628f5c6ab0 100644 --- a/pkg/function/kube_exec_test.go +++ b/pkg/function/kube_exec_test.go @@ -19,6 +19,7 @@ import ( "fmt" "strings" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" . "gopkg.in/check.v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -26,8 +27,6 @@ import ( "k8s.io/client-go/kubernetes" k8sscheme "k8s.io/client-go/kubernetes/scheme" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - kanister "github.com/kanisterio/kanister/pkg" crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" "github.com/kanisterio/kanister/pkg/client/clientset/versioned" diff --git a/pkg/function/prepare_data.go b/pkg/function/prepare_data.go index 3194a9a110..17b959ed6f 100644 --- a/pkg/function/prepare_data.go +++ b/pkg/function/prepare_data.go @@ -132,7 +132,7 @@ func prepareDataPodFunc(cli kubernetes.Interface) func(ctx context.Context, pc k if err != nil { return nil, errors.Wrapf(err, "Failed to fetch logs from the pod") } - defer r.Close() + defer r.Close() //nolint:errcheck bytes, err := io.ReadAll(r) if err != nil { diff --git a/pkg/function/restore_csi_snapshot_test.go b/pkg/function/restore_csi_snapshot_test.go index a969ba1bbf..b101179929 100644 --- a/pkg/function/restore_csi_snapshot_test.go +++ b/pkg/function/restore_csi_snapshot_test.go @@ -17,8 +17,6 @@ package function import ( "context" - "github.com/kanisterio/kanister/pkg/kube/snapshot" - . "gopkg.in/check.v1" corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" @@ -26,6 +24,8 @@ import ( "k8s.io/apimachinery/pkg/runtime" dynfake "k8s.io/client-go/dynamic/fake" "k8s.io/client-go/kubernetes/fake" + + "github.com/kanisterio/kanister/pkg/kube/snapshot" ) const ( diff --git a/pkg/function/scale_test.go b/pkg/function/scale_test.go index edabb264b6..8278c80cd2 100644 --- a/pkg/function/scale_test.go +++ b/pkg/function/scale_test.go @@ -18,6 +18,7 @@ import ( "context" "fmt" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" . "gopkg.in/check.v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -25,8 +26,6 @@ import ( "k8s.io/client-go/kubernetes" k8sscheme "k8s.io/client-go/kubernetes/scheme" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - kanister "github.com/kanisterio/kanister/pkg" crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" "github.com/kanisterio/kanister/pkg/client/clientset/versioned" diff --git a/pkg/jsonpath/jsonpath_test.go b/pkg/jsonpath/jsonpath_test.go index ddfc130af0..9c83e52256 100644 --- a/pkg/jsonpath/jsonpath_test.go +++ b/pkg/jsonpath/jsonpath_test.go @@ -18,7 +18,6 @@ import ( "testing" . "gopkg.in/check.v1" - "k8s.io/apimachinery/pkg/runtime" "k8s.io/client-go/kubernetes/scheme" ) diff --git a/pkg/kancontroller/kancontroller.go b/pkg/kancontroller/kancontroller.go index 5fd179e6b3..cb82bbf4b4 100644 --- a/pkg/kancontroller/kancontroller.go +++ b/pkg/kancontroller/kancontroller.go @@ -34,12 +34,13 @@ import ( "k8s.io/client-go/rest" "github.com/kanisterio/kanister/pkg/controller" - _ "github.com/kanisterio/kanister/pkg/function" "github.com/kanisterio/kanister/pkg/handler" "github.com/kanisterio/kanister/pkg/kube" "github.com/kanisterio/kanister/pkg/log" "github.com/kanisterio/kanister/pkg/resource" "github.com/kanisterio/kanister/pkg/validatingwebhook" + + _ "github.com/kanisterio/kanister/pkg/function" ) const ( diff --git a/pkg/kanctl/actionset.go b/pkg/kanctl/actionset.go index 4e55965b9d..c2430065bf 100644 --- a/pkg/kanctl/actionset.go +++ b/pkg/kanctl/actionset.go @@ -1,4 +1,4 @@ -// Copyright 2019 The Kanister Authors. +// Copyright 2024 The Kanister Authors. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -21,6 +21,7 @@ import ( "strings" "sync" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" "github.com/pkg/errors" "github.com/spf13/cobra" apierrors "k8s.io/apimachinery/pkg/api/errors" @@ -31,8 +32,6 @@ import ( "k8s.io/client-go/kubernetes" "sigs.k8s.io/yaml" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" "github.com/kanisterio/kanister/pkg/client/clientset/versioned" "github.com/kanisterio/kanister/pkg/kube" diff --git a/pkg/kanctl/kanctl.go b/pkg/kanctl/kanctl.go index abda11d083..3a126074e1 100644 --- a/pkg/kanctl/kanctl.go +++ b/pkg/kanctl/kanctl.go @@ -17,6 +17,7 @@ package kanctl import ( "os" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" "github.com/pkg/errors" "github.com/spf13/cobra" "k8s.io/client-go/kubernetes" @@ -25,8 +26,6 @@ import ( "github.com/kanisterio/kanister/pkg/kube" "github.com/kanisterio/kanister/pkg/log" "github.com/kanisterio/kanister/pkg/version" - - osversioned "github.com/openshift/client-go/apps/clientset/versioned" ) const ( diff --git a/pkg/kanctl/profile.go b/pkg/kanctl/profile.go index c7628dd946..e4b6da780e 100644 --- a/pkg/kanctl/profile.go +++ b/pkg/kanctl/profile.go @@ -23,7 +23,7 @@ import ( "github.com/pkg/errors" "github.com/spf13/cobra" "golang.org/x/oauth2/google" - compute "google.golang.org/api/compute/v1" + "google.golang.org/api/compute/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" k8sYAML "k8s.io/apimachinery/pkg/util/yaml" @@ -468,7 +468,7 @@ func getProfileFromFile(ctx context.Context, filename string) (*crv1alpha1.Profi if err != nil { return nil, err } - defer f.Close() + defer f.Close() //nolint:errcheck } d := k8sYAML.NewYAMLOrJSONDecoder(f, 4096) prof := &crv1alpha1.Profile{} diff --git a/pkg/kanctl/secrets.go b/pkg/kanctl/secrets.go index 928bf2836b..a8333c5f50 100644 --- a/pkg/kanctl/secrets.go +++ b/pkg/kanctl/secrets.go @@ -62,7 +62,7 @@ func getSecretFromFile(ctx context.Context, filename string) (*corev1.Secret, er if err != nil { return nil, err } - defer f.Close() + defer f.Close() //nolint:errcheck } d := k8sYAML.NewYAMLOrJSONDecoder(f, 4096) secret := &corev1.Secret{} diff --git a/pkg/kando/output.go b/pkg/kando/output.go index 13f372163c..3c8e092da5 100644 --- a/pkg/kando/output.go +++ b/pkg/kando/output.go @@ -32,7 +32,6 @@ func newOutputCommand() *cobra.Command { return cmd } -//nolint:unparam func validateArguments(c *cobra.Command, args []string) error { if len(args) != 2 { return errors.Errorf("Command accepts 2 arguments, received %d arguments", len(args)) @@ -40,7 +39,6 @@ func validateArguments(c *cobra.Command, args []string) error { return output.ValidateKey(args[0]) } -//nolint:unparam func runOutputCommand(c *cobra.Command, args []string) error { return output.PrintOutput(args[0], args[1]) } diff --git a/pkg/kopia/cli/args/ephemeral_args.go b/pkg/kopia/cli/args/ephemeral_args.go index 22ea95c2ae..c460d11264 100644 --- a/pkg/kopia/cli/args/ephemeral_args.go +++ b/pkg/kopia/cli/args/ephemeral_args.go @@ -17,9 +17,9 @@ package args import ( "fmt" - "github.com/kanisterio/kanister/pkg/logsafe" - "github.com/kanisterio/safecli/command" + + "github.com/kanisterio/kanister/pkg/logsafe" ) var ( diff --git a/pkg/kopia/cli/repository/repository_connect.go b/pkg/kopia/cli/repository/repository_connect.go index db03f9c5a4..09269a7b02 100644 --- a/pkg/kopia/cli/repository/repository_connect.go +++ b/pkg/kopia/cli/repository/repository_connect.go @@ -16,7 +16,6 @@ package repository import ( "github.com/go-openapi/strfmt" - "github.com/kanisterio/safecli" "github.com/kanisterio/kanister/pkg/kopia/cli/args" diff --git a/pkg/kopia/command/parse_command_output.go b/pkg/kopia/command/parse_command_output.go index 8dc25a09e7..d0d911fc21 100644 --- a/pkg/kopia/command/parse_command_output.go +++ b/pkg/kopia/command/parse_command_output.go @@ -23,7 +23,6 @@ import ( "strings" "github.com/dustin/go-humanize" - "github.com/kanisterio/errkit" "github.com/kopia/kopia/repo/manifest" "github.com/kopia/kopia/snapshot" diff --git a/pkg/kopia/repository/connect_or_create.go b/pkg/kopia/repository/connect_or_create.go index 36ac4f3755..cf418d618e 100644 --- a/pkg/kopia/repository/connect_or_create.go +++ b/pkg/kopia/repository/connect_or_create.go @@ -17,9 +17,8 @@ package repository import ( "context" - "k8s.io/client-go/kubernetes" - "github.com/kanisterio/errkit" + "k8s.io/client-go/kubernetes" "github.com/kanisterio/kanister/pkg/kopia/command" kerrors "github.com/kanisterio/kanister/pkg/kopia/errors" diff --git a/pkg/kube/client.go b/pkg/kube/client.go index ed01bed531..c4dcc1a4e9 100644 --- a/pkg/kube/client.go +++ b/pkg/kube/client.go @@ -19,9 +19,10 @@ import ( crdclient "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset" "k8s.io/client-go/dynamic" "k8s.io/client-go/kubernetes" - _ "k8s.io/client-go/plugin/pkg/client/auth" "k8s.io/client-go/rest" "k8s.io/client-go/tools/clientcmd" + + _ "k8s.io/client-go/plugin/pkg/client/auth" ) func newClientConfig() clientcmd.ClientConfig { diff --git a/pkg/kube/exec_test.go b/pkg/kube/exec_test.go index a769179491..e39ebdf81f 100644 --- a/pkg/kube/exec_test.go +++ b/pkg/kube/exec_test.go @@ -274,7 +274,7 @@ func (s *ExecSuite) TestKopiaCommand(c *C) { } p, err := s.cli.CoreV1().Pods(s.namespace).Create(ctx, pod, metav1.CreateOptions{}) c.Assert(err, IsNil) - defer s.cli.CoreV1().Pods(s.namespace).Delete(ctx, pod.Name, metav1.DeleteOptions{}) //nolint: errcheck + defer s.cli.CoreV1().Pods(s.namespace).Delete(ctx, pod.Name, metav1.DeleteOptions{}) ctxT, cancel := context.WithTimeout(ctx, 5*time.Minute) defer cancel() c.Assert(WaitForPodReady(ctxT, s.cli, s.namespace, p.Name), IsNil) diff --git a/pkg/kube/fake_pod_command_executor.go b/pkg/kube/fake_pod_command_executor.go index 055dce20bc..edfe7b55c5 100644 --- a/pkg/kube/fake_pod_command_executor.go +++ b/pkg/kube/fake_pod_command_executor.go @@ -32,10 +32,10 @@ func (fce *FakePodCommandExecutor) Exec(_ context.Context, command []string, std fce.inExecCommand = make([]string, len(command)) copy(fce.inExecCommand, command) if stdout != nil && len(fce.ExecStdout) > 0 { - stdout.Write([]byte(fce.ExecStdout)) //nolint: errcheck + stdout.Write([]byte(fce.ExecStdout)) //nolint:errcheck } if stderr != nil && len(fce.ExecStderr) > 0 { - stderr.Write([]byte(fce.ExecStderr)) //nolint: errcheck + stderr.Write([]byte(fce.ExecStderr)) //nolint:errcheck } return fce.ExecErr diff --git a/pkg/kube/log_tail_test.go b/pkg/kube/log_tail_test.go index 11df0a6a2b..22f7d5e3ba 100644 --- a/pkg/kube/log_tail_test.go +++ b/pkg/kube/log_tail_test.go @@ -52,14 +52,14 @@ func (s *LogTailTestSuite) TestLogsTail(c *C) { lt := NewLogTail(3) c.Check(lt.ToString(), Equals, "") // If there were no writes at all, output should be empty line - lt.Write([]byte("line1")) // nolint: errcheck - lt.Write([]byte("line2")) // nolint: errcheck + lt.Write([]byte("line1")) + lt.Write([]byte("line2")) c.Check(lt.ToString(), Equals, "line1\r\nline2") c.Check(lt.ToString(), Equals, "line1\r\nline2") // Second invocation should get the same result // Check that buffer is still working after ToString is called - lt.Write([]byte("line3")) // nolint: errcheck + lt.Write([]byte("line3")) c.Check(lt.ToString(), Equals, "line1\r\nline2\r\nline3") - lt.Write([]byte("line4")) // nolint: errcheck + lt.Write([]byte("line4")) c.Check(lt.ToString(), Equals, "line2\r\nline3\r\nline4") } diff --git a/pkg/kube/pod.go b/pkg/kube/pod.go index bd527ee8ee..6748b7244e 100644 --- a/pkg/kube/pod.go +++ b/pkg/kube/pod.go @@ -310,7 +310,7 @@ func GetPodLogs(ctx context.Context, cli kubernetes.Interface, namespace, podNam if err != nil { return "", err } - defer reader.Close() + defer reader.Close() //nolint:errcheck bytes, err := io.ReadAll(reader) if err != nil { return "", err @@ -324,12 +324,12 @@ func getErrorFromLogs(ctx context.Context, cli kubernetes.Interface, namespace, if logErr != nil { return errkit.Wrap(logErr, "Failed to fetch logs from the pod") } - defer r.Close() + defer r.Close() //nolint:errcheck // Grab last log lines and put them to an error lt := NewLogTail(logTailDefaultLength) // We are not interested in log extraction error - io.Copy(lt, r) // nolint: errcheck + io.Copy(lt, r) //nolint:errcheck return errkit.Wrap(errkit.Wrap(err, lt.ToString()), errorMessage) } diff --git a/pkg/kube/pod_command_executor_test.go b/pkg/kube/pod_command_executor_test.go index 43d60dedd5..3aeb7b2bd5 100644 --- a/pkg/kube/pod_command_executor_test.go +++ b/pkg/kube/pod_command_executor_test.go @@ -81,10 +81,10 @@ func (fprp *fakePodCommandExecutorProcessor) ExecWithOptions(ctx context.Context fprp.inExecWithOptionsOpts = &opts fprp.execWithOptionsSyncStart.SyncWithController() if opts.Stdout != nil && len(fprp.execWithOptionsStdout) > 0 { - opts.Stdout.Write([]byte(fprp.execWithOptionsStdout)) //nolint: errcheck + opts.Stdout.Write([]byte(fprp.execWithOptionsStdout)) } if opts.Stderr != nil && len(fprp.execWithOptionsStderr) > 0 { - opts.Stderr.Write([]byte(fprp.execWithOptionsStderr)) //nolint: errcheck + opts.Stderr.Write([]byte(fprp.execWithOptionsStderr)) } fprp.execWithOptionsSyncEnd.SyncWithController() diff --git a/pkg/kube/podinfo.go b/pkg/kube/podinfo.go index 05c093b7f5..863244768e 100644 --- a/pkg/kube/podinfo.go +++ b/pkg/kube/podinfo.go @@ -19,9 +19,8 @@ import ( "os" "github.com/kanisterio/errkit" - "k8s.io/client-go/kubernetes" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/client-go/kubernetes" ) const ( diff --git a/pkg/kube/podinfo_test.go b/pkg/kube/podinfo_test.go index 5202413a75..760d304be5 100644 --- a/pkg/kube/podinfo_test.go +++ b/pkg/kube/podinfo_test.go @@ -18,7 +18,6 @@ import ( "os" . "gopkg.in/check.v1" - "k8s.io/client-go/kubernetes/fake" ) diff --git a/pkg/kube/workload.go b/pkg/kube/workload.go index e99c556cfc..eaf054b3ec 100644 --- a/pkg/kube/workload.go +++ b/pkg/kube/workload.go @@ -21,6 +21,8 @@ import ( "strconv" "github.com/kanisterio/errkit" + osAppsv1 "github.com/openshift/api/apps/v1" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" appsv1 "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" apierrors "k8s.io/apimachinery/pkg/api/errors" @@ -30,9 +32,6 @@ import ( "k8s.io/apimachinery/pkg/types" "k8s.io/client-go/kubernetes" - osAppsv1 "github.com/openshift/api/apps/v1" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - "github.com/kanisterio/kanister/pkg/poll" ) diff --git a/pkg/log/fluentbit.go b/pkg/log/fluentbit.go index 0413b06c2a..36a03397a3 100644 --- a/pkg/log/fluentbit.go +++ b/pkg/log/fluentbit.go @@ -75,7 +75,7 @@ func handle(msgs []byte, endpoint string) error { if err != nil { return errors.Wrap(err, "Fluentbit connection error") } - defer conn.Close() //nolint: errcheck + defer conn.Close() //nolint:errcheck _, err = conn.Write(msgs) if err != nil { return errors.Wrap(err, "Fluentbit write error") diff --git a/pkg/log/log_test.go b/pkg/log/log_test.go index 96c2e91c6d..b4fdd7303b 100644 --- a/pkg/log/log_test.go +++ b/pkg/log/log_test.go @@ -35,11 +35,10 @@ func (s *LogSuite) TestWithNilError(c *C) { WithError(nil).Print("Message") } -// nolint func (s *LogSuite) TestWithNilContext(c *C) { log.SetFormatter(&logrus.JSONFormatter{TimestampFormat: time.RFC3339Nano}) // Should not panic - WithContext(nil).Print("Message") + WithContext(nil).Print("Message") //nolint:staticcheck } func (s *LogSuite) TestLogMessage(c *C) { diff --git a/pkg/objectstore/directory.go b/pkg/objectstore/directory.go index e1d28f5674..f184c29449 100644 --- a/pkg/objectstore/directory.go +++ b/pkg/objectstore/directory.go @@ -220,7 +220,7 @@ func (d *directory) GetBytes(ctx context.Context, name string) ([]byte, map[stri if err != nil { return nil, nil, err } - defer r.Close() + defer r.Close() //nolint:errcheck data, err := io.ReadAll(r) if err != nil { diff --git a/pkg/param/param_test.go b/pkg/param/param_test.go index 15e39458bc..1c41cd4e8b 100644 --- a/pkg/param/param_test.go +++ b/pkg/param/param_test.go @@ -23,6 +23,9 @@ import ( "text/template" "time" + osapps "github.com/openshift/api/apps/v1" + osversioned "github.com/openshift/client-go/apps/clientset/versioned" + osfake "github.com/openshift/client-go/apps/clientset/versioned/fake" . "gopkg.in/check.v1" appsv1 "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" @@ -35,10 +38,6 @@ import ( "k8s.io/client-go/kubernetes/fake" "k8s.io/client-go/kubernetes/scheme" - osapps "github.com/openshift/api/apps/v1" - osversioned "github.com/openshift/client-go/apps/clientset/versioned" - osfake "github.com/openshift/client-go/apps/clientset/versioned/fake" - crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1" crfake "github.com/kanisterio/kanister/pkg/client/clientset/versioned/fake" "github.com/kanisterio/kanister/pkg/ksprig" diff --git a/pkg/resource/resource.go b/pkg/resource/resource.go index 35a3697315..f4ecc6e74b 100644 --- a/pkg/resource/resource.go +++ b/pkg/resource/resource.go @@ -22,7 +22,6 @@ import ( "time" "github.com/pkg/errors" - apiextensionsclient "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset" "k8s.io/client-go/kubernetes" "k8s.io/client-go/rest" diff --git a/pkg/testing/integration_register.go b/pkg/testing/integration_register.go index d285e0730b..e5233ee08a 100644 --- a/pkg/testing/integration_register.go +++ b/pkg/testing/integration_register.go @@ -18,9 +18,9 @@ package testing import ( - . "gopkg.in/check.v1" - "github.com/kanisterio/kanister/pkg/app" + + . "gopkg.in/check.v1" ) // Register Applications to Integration Suite