From 25068c5c94be72ae3475ab4bdeb72f85edb1ffe0 Mon Sep 17 00:00:00 2001 From: Pulok Saha Date: Tue, 9 Dec 2025 13:08:23 +0600 Subject: [PATCH] Use golangci-lint 2.x Signed-off-by: Pulok Saha --- .golangci.yml | 28 +++++++++++++++++++++ Makefile | 2 +- go.mod | 4 +-- lintconf.yaml | 43 -------------------------------- pkg/manager/generic_resources.go | 2 +- pkg/sanitizers/metadata.go | 6 ++--- pkg/sanitizers/pod.go | 8 +++--- pkg/sanitizers/sanitizer.go | 4 +-- pkg/sanitizers/workload.go | 6 ++--- 9 files changed, 43 insertions(+), 60 deletions(-) create mode 100644 .golangci.yml delete mode 100644 lintconf.yaml diff --git a/.golangci.yml b/.golangci.yml new file mode 100644 index 00000000..cdd2defc --- /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 45bfc2f5..b1efffed 100644 --- a/Makefile +++ b/Makefile @@ -288,7 +288,7 @@ lint: $(BUILD_DIRS) --env GO111MODULE=on \ --env GOFLAGS="-mod=vendor" \ $(BUILD_IMAGE) \ - golangci-lint run --enable $(ADDTL_LINTERS) --timeout=30m --exclude-files="generated.*\.go$\" --exclude-dirs-use-default --exclude-dirs=client,vendor + golangci-lint run $(BUILD_DIRS): @mkdir -p $@ diff --git a/go.mod b/go.mod index aa43ac8e..7c194462 100644 --- a/go.mod +++ b/go.mod @@ -1,8 +1,6 @@ module stash.appscode.dev/kubedump -go 1.23.0 - -toolchain go1.24.4 +go 1.25.5 require ( github.com/spf13/cobra v1.8.0 diff --git a/lintconf.yaml b/lintconf.yaml deleted file mode 100644 index 860d7cb9..00000000 --- a/lintconf.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# adapted from: https://github.com/helm/chart-testing/raw/master/etc/lintconf.yaml ---- -rules: - braces: - min-spaces-inside: 0 - max-spaces-inside: 0 - min-spaces-inside-empty: -1 - max-spaces-inside-empty: -1 - brackets: - min-spaces-inside: 0 - max-spaces-inside: 0 - min-spaces-inside-empty: -1 - max-spaces-inside-empty: -1 - colons: - max-spaces-before: 0 - max-spaces-after: 1 - commas: - max-spaces-before: 0 - min-spaces-after: 1 - max-spaces-after: 1 - comments: - require-starting-space: true - min-spaces-from-content: 1 - document-end: disable - document-start: disable # No --- to start a file - empty-lines: - max: 2 - max-start: 0 - max-end: 0 - hyphens: - max-spaces-after: 1 - indentation: - spaces: consistent - indent-sequences: whatever # - list indentation will handle both indentation and without - check-multi-line-strings: false - key-duplicates: enable - line-length: disable # Lines can be any length - new-line-at-end-of-file: enable - new-lines: - type: unix - trailing-spaces: enable - truthy: - level: warning diff --git a/pkg/manager/generic_resources.go b/pkg/manager/generic_resources.go index 122c366b..b228d6a6 100644 --- a/pkg/manager/generic_resources.go +++ b/pkg/manager/generic_resources.go @@ -118,7 +118,7 @@ func (opt *itemDumper) getFileName(r unstructured.Unstructured) string { return filepath.Join(prefix, r.GetKind(), r.GetName()) + ".yaml" } -func storeItem(fileName string, in map[string]interface{}, storage Writer) error { +func storeItem(fileName string, in map[string]any, storage Writer) error { data, err := yaml.Marshal(in) if err != nil { return err diff --git a/pkg/sanitizers/metadata.go b/pkg/sanitizers/metadata.go index fd7427a1..bf4b3993 100644 --- a/pkg/sanitizers/metadata.go +++ b/pkg/sanitizers/metadata.go @@ -22,8 +22,8 @@ func newMetadataSanitizer() Sanitizer { return metadataSanitizer{} } -func (s metadataSanitizer) Sanitize(in map[string]interface{}) (map[string]interface{}, error) { - meta, ok := in["metadata"].(map[string]interface{}) +func (s metadataSanitizer) Sanitize(in map[string]any) (map[string]any, error) { + meta, ok := in["metadata"].(map[string]any) if !ok { return in, nil } @@ -44,7 +44,7 @@ func (s metadataSanitizer) Sanitize(in map[string]interface{}) (map[string]inter return in, nil } -func cleanUpAnnotations(in interface{}) interface{} { +func cleanUpAnnotations(in any) any { m, ok := in.(map[string]string) if !ok { return in diff --git a/pkg/sanitizers/pod.go b/pkg/sanitizers/pod.go index 90c71a15..9f512e6d 100644 --- a/pkg/sanitizers/pod.go +++ b/pkg/sanitizers/pod.go @@ -29,13 +29,13 @@ func newPodSanitizer() Sanitizer { return podSanitizer{} } -func (s podSanitizer) Sanitize(in map[string]interface{}) (map[string]interface{}, error) { +func (s podSanitizer) Sanitize(in map[string]any) (map[string]any, error) { ms := newMetadataSanitizer() in, err := ms.Sanitize(in) if err != nil { return nil, err } - spec, ok := in["spec"].(map[string]interface{}) + spec, ok := in["spec"].(map[string]any) if !ok { return nil, fmt.Errorf("invalid pod spec") } @@ -47,7 +47,7 @@ func (s podSanitizer) Sanitize(in map[string]interface{}) (map[string]interface{ return in, nil } -func cleanUpPodSpec(in map[string]interface{}) (map[string]interface{}, error) { +func cleanUpPodSpec(in map[string]any) (map[string]any, error) { b, err := yaml.Marshal(in) if err != nil { return nil, err @@ -75,7 +75,7 @@ func cleanUpPodSpec(in map[string]interface{}) (map[string]interface{}, error) { if err != nil { return nil, err } - var out map[string]interface{} + var out map[string]any err = yaml.Unmarshal(b, &out) return out, err } diff --git a/pkg/sanitizers/sanitizer.go b/pkg/sanitizers/sanitizer.go index 0f34d959..1dbff831 100644 --- a/pkg/sanitizers/sanitizer.go +++ b/pkg/sanitizers/sanitizer.go @@ -17,7 +17,7 @@ limitations under the License. package sanitizers type Sanitizer interface { - Sanitize(in map[string]interface{}) (map[string]interface{}, error) + Sanitize(in map[string]any) (map[string]any, error) } func NewSanitizer(kind string) Sanitizer { @@ -37,7 +37,7 @@ func newDefaultSanitizer() Sanitizer { return defaultSanitizer{} } -func (s defaultSanitizer) Sanitize(in map[string]interface{}) (map[string]interface{}, error) { +func (s defaultSanitizer) Sanitize(in map[string]any) (map[string]any, error) { ms := newMetadataSanitizer() in, err := ms.Sanitize(in) if err != nil { diff --git a/pkg/sanitizers/workload.go b/pkg/sanitizers/workload.go index d4f648e9..aa4fa12a 100644 --- a/pkg/sanitizers/workload.go +++ b/pkg/sanitizers/workload.go @@ -24,19 +24,19 @@ func newWorkloadSanitizer() Sanitizer { return workloadSanitizer{} } -func (s workloadSanitizer) Sanitize(in map[string]interface{}) (map[string]interface{}, error) { +func (s workloadSanitizer) Sanitize(in map[string]any) (map[string]any, error) { ms := newMetadataSanitizer() in, err := ms.Sanitize(in) if err != nil { return nil, err } - spec, ok := in["spec"].(map[string]interface{}) + spec, ok := in["spec"].(map[string]any) if !ok { return nil, fmt.Errorf("unable to parse workload spec") } - template, ok := spec["template"].(map[string]interface{}) + template, ok := spec["template"].(map[string]any) if !ok { return nil, fmt.Errorf("unable to parse pod template") }