From 020b677e4930510af9fe850b3e244da870bbd7f9 Mon Sep 17 00:00:00 2001 From: Pulok Saha Date: Tue, 9 Dec 2025 16:13:28 +0600 Subject: [PATCH] Use golangci-lint 2.x Signed-off-by: Pulok Saha --- .golangci.yml | 28 ++++++++++++++++++++++++++++ Makefile | 2 +- go.mod | 4 +--- hack/gendocs/main.go | 4 ++-- pkg/add_key.go | 6 ++++-- pkg/check.go | 5 ++++- pkg/copy_repository.go | 2 +- pkg/create_repository.go | 2 +- pkg/delete_snapshot.go | 5 ++++- pkg/download.go | 5 ++++- pkg/list_keys.go | 5 ++++- pkg/migrate.go | 5 ++++- pkg/prune.go | 5 ++++- pkg/purge_repos.go | 2 +- pkg/rebuild_index.go | 5 ++++- pkg/remove_key.go | 5 ++++- pkg/unlock.go | 5 ++++- pkg/update_key.go | 5 ++++- 18 files changed, 79 insertions(+), 21 deletions(-) create mode 100644 .golangci.yml diff --git a/.golangci.yml b/.golangci.yml new file mode 100644 index 000000000..cdd2defce --- /dev/null +++ b/.golangci.yml @@ -0,0 +1,28 @@ +version: "2" +linters: + default: standard + enable: + - unparam + +formatters: + enable: + - gofmt + - goimports + settings: + gofmt: + rewrite-rules: + - pattern: 'interface{}' + replacement: 'any' + +issues: + max-same-issues: 100 + + exclude-files: + - generated.*\\.go + + exclude-dirs: + - client + - vendor + +run: + timeout: 10m diff --git a/Makefile b/Makefile index a55f72bbc..e961164b7 100644 --- a/Makefile +++ b/Makefile @@ -220,7 +220,7 @@ lint: $(BUILD_DIRS) --env GO111MODULE=on \ --env GOFLAGS="-mod=vendor" \ $(BUILD_IMAGE) \ - golangci-lint run --enable $(ADDTL_LINTERS) --timeout=10m --exclude-files="generated.*\.go$\" --exclude-dirs-use-default + golangci-lint run $(BUILD_DIRS): @mkdir -p $@ diff --git a/go.mod b/go.mod index 0799f7bb7..b222f4046 100644 --- a/go.mod +++ b/go.mod @@ -1,8 +1,6 @@ module stash.appscode.dev/cli -go 1.24 - -toolchain go1.24.4 +go 1.25.5 require ( github.com/kubernetes-csi/external-snapshotter/client/v7 v7.0.0 diff --git a/hack/gendocs/main.go b/hack/gendocs/main.go index 83ea9d34e..a5e35e137 100644 --- a/hack/gendocs/main.go +++ b/hack/gendocs/main.go @@ -93,7 +93,7 @@ func main() { filePrepender := func(filename string) string { filename = filepath.Base(filename) base := strings.TrimSuffix(filename, path.Ext(filename)) - name := cases.Title(language.English).String(strings.Replace(base, "_", " ", -1)) + name := cases.Title(language.English).String(strings.ReplaceAll(base, "_", " ")) parts := strings.Split(name, " ") if len(parts) > 1 { name = strings.Join(parts[1:], " ") @@ -103,7 +103,7 @@ func main() { Name string RootCmd bool }{ - strings.Replace(base, "_", "-", -1), + strings.ReplaceAll(base, "_", "-"), name, !strings.ContainsRune(base, '_'), } diff --git a/pkg/add_key.go b/pkg/add_key.go index fac760adf..d257c4d0c 100644 --- a/pkg/add_key.go +++ b/pkg/add_key.go @@ -162,8 +162,10 @@ func (opt *keyOptions) addResticKey() error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) - + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ StorageSecret: secret, diff --git a/pkg/check.go b/pkg/check.go index 4847624e3..7939de45d 100644 --- a/pkg/check.go +++ b/pkg/check.go @@ -132,7 +132,10 @@ func (opt *checkOptions) checkRepository(extraArgs []string) error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/copy_repository.go b/pkg/copy_repository.go index 238d698c2..9571f9799 100644 --- a/pkg/copy_repository.go +++ b/pkg/copy_repository.go @@ -33,7 +33,7 @@ func NewCmdCopyRepository() *cobra.Command { DisableAutoGenTag: true, RunE: func(cmd *cobra.Command, args []string) error { if len(args) == 0 || args[0] == "" { - return fmt.Errorf("Repository name is not provided") + return fmt.Errorf("repository name is not provided") } repositoryName := args[0] diff --git a/pkg/create_repository.go b/pkg/create_repository.go index 7e1502cd3..0ba2622d0 100644 --- a/pkg/create_repository.go +++ b/pkg/create_repository.go @@ -54,7 +54,7 @@ func NewCmdCreateRepository() *cobra.Command { DisableAutoGenTag: true, RunE: func(cmd *cobra.Command, args []string) error { if len(args) == 0 || args[0] == "" { - return fmt.Errorf("Repository name is not provided ") + return fmt.Errorf("repository name is not provided ") } repositoryName := args[0] diff --git a/pkg/delete_snapshot.go b/pkg/delete_snapshot.go index eaf9372de..2e25fcba1 100644 --- a/pkg/delete_snapshot.go +++ b/pkg/delete_snapshot.go @@ -106,7 +106,10 @@ func NewCmdDeleteSnapshot(clientGetter genericclioptions.RESTClientGetter) *cobr if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/download.go b/pkg/download.go index f38ef2f84..e79222aec 100644 --- a/pkg/download.go +++ b/pkg/download.go @@ -171,7 +171,10 @@ func (opt *downloadOptions) downloadSnapshots() error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/list_keys.go b/pkg/list_keys.go index 93deb4dcf..e758248f1 100644 --- a/pkg/list_keys.go +++ b/pkg/list_keys.go @@ -97,7 +97,10 @@ func (opt *keyOptions) listResticKeys() error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/migrate.go b/pkg/migrate.go index db6b296d9..5c5b2d2d3 100644 --- a/pkg/migrate.go +++ b/pkg/migrate.go @@ -130,7 +130,10 @@ func (opt *migrateOptions) migrateRepo() error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/prune.go b/pkg/prune.go index 08d6b4990..04db4a728 100644 --- a/pkg/prune.go +++ b/pkg/prune.go @@ -146,7 +146,10 @@ func (opt *pruneOptions) pruneRepo(extraArgs []string) error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/purge_repos.go b/pkg/purge_repos.go index f96c65a41..9908fe033 100644 --- a/pkg/purge_repos.go +++ b/pkg/purge_repos.go @@ -363,7 +363,7 @@ func (opt *purgeOptions) findRepositoriesToPurge(rw *restic.ResticWrapper, repoB script := opt.generateRepoListScript(repoBase, rw, subDirs) out, err := runResticScriptViaDocker(script) if err != nil { - return nil, fmt.Errorf("Error running repo check script: %v\nOutput:\n%s", err, out) + return nil, fmt.Errorf("error running repo check script: %v\nOutput:\n%s", err, out) } err = extractRepoListFromOutput(out, repoBase, subDirs, cutoffTime, &repos) diff --git a/pkg/rebuild_index.go b/pkg/rebuild_index.go index 22cad8c90..e49f6a004 100644 --- a/pkg/rebuild_index.go +++ b/pkg/rebuild_index.go @@ -106,7 +106,10 @@ func (opt *rebuildIndexOptions) rebuildIndex(extraArgs []string) error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/remove_key.go b/pkg/remove_key.go index cba2db083..bc436e6f3 100644 --- a/pkg/remove_key.go +++ b/pkg/remove_key.go @@ -93,7 +93,10 @@ func (opt *keyOptions) removeResticKey() error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/unlock.go b/pkg/unlock.go index b6dcb4938..a050f4950 100644 --- a/pkg/unlock.go +++ b/pkg/unlock.go @@ -120,7 +120,10 @@ func (opt *unlockOptions) unlockRepository() error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{ diff --git a/pkg/update_key.go b/pkg/update_key.go index eb93586ea..709da89d3 100644 --- a/pkg/update_key.go +++ b/pkg/update_key.go @@ -119,7 +119,10 @@ func (opt *keyOptions) updateResticKey() error { if err = os.MkdirAll(ScratchDir, 0o755); err != nil { return err } - defer os.RemoveAll(ScratchDir) + err = os.RemoveAll(ScratchDir) + if err != nil { + klog.Errorf("Error removing all: %v", err) + } // configure restic wrapper extraOpt := util.ExtraOptions{