From eb279a1e394c0ca25aed9f22b9ecf1686127d9f7 Mon Sep 17 00:00:00 2001 From: Tamal Saha Date: Sat, 11 Jul 2026 14:20:34 +0600 Subject: [PATCH] Modernize golangci-lint config - Enable bodyclose and prealloc linters - Move exclude-files/exclude-dirs to linters.exclusions.paths (golangci-lint v2 location) and fix over-escaped regex generated.*\\.go -> generated.*\.go - Switch formatter from gofmt to gofumpt and drop the interface{} -> any rewrite rule (gofumpt is a stricter superset) - Apply resulting gofumpt formatting Signed-off-by: Tamal Saha --- .golangci.yml | 21 ++++++++------------- pkg/evaluator/eval.go | 4 +++- test/e2e/framework/crd.go | 39 ++++++++++++++++++++------------------- 3 files changed, 31 insertions(+), 33 deletions(-) diff --git a/.golangci.yml b/.golangci.yml index 02da6d3cd..4700e5d18 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -2,6 +2,8 @@ version: "2" linters: default: standard enable: + - bodyclose + - prealloc - unparam settings: staticcheck: @@ -9,26 +11,19 @@ linters: - fmt - github.com/onsi/ginkgo/v2 - github.com/onsi/gomega + exclusions: + paths: + - generated.*\.go + - client + - vendor formatters: enable: - - gofmt + - gofumpt - 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/pkg/evaluator/eval.go b/pkg/evaluator/eval.go index e2d74c252..d9b05fc3e 100644 --- a/pkg/evaluator/eval.go +++ b/pkg/evaluator/eval.go @@ -132,7 +132,9 @@ func getProgramForRule(rule string) (cel.Program, error) { } env, err := cel.NewEnv( cel.VariableDecls( - decls.NewVariable(defaultCELVar, types.DynType))) + decls.NewVariable(defaultCELVar, types.DynType), + ), + ) if err != nil { return nil, err } diff --git a/test/e2e/framework/crd.go b/test/e2e/framework/crd.go index 7c0d76eb9..c3a4a4d11 100644 --- a/test/e2e/framework/crd.go +++ b/test/e2e/framework/crd.go @@ -28,25 +28,26 @@ import ( ) func (f *Framework) EnsureCRD() GomegaAsyncAssertion { - return Eventually(func() error { - if err := f.kc.List(f.ctx, &api.RecommendationList{}); err != nil { - return fmt.Errorf("CRD Recommendation is not ready, Reason: %v", err) - } - - if err := f.kc.List(f.ctx, &api.MaintenanceWindowList{}); err != nil { - return fmt.Errorf("CRD MaintainenceWindow is not ready, Reason: %v", err) - } - - if err := f.kc.List(f.ctx, &api.ClusterMaintenanceWindowList{}); err != nil { - return fmt.Errorf("CRD ClusterMaintainenceWindow is not ready, Reason: %v", err) - } - - if err := f.kc.List(f.ctx, &api.ApprovalPolicyList{}); err != nil { - return fmt.Errorf("CRD ApprovalPolicy is not ready, Reason: %v", err) - } - - return nil - }, + return Eventually( + func() error { + if err := f.kc.List(f.ctx, &api.RecommendationList{}); err != nil { + return fmt.Errorf("CRD Recommendation is not ready, Reason: %v", err) + } + + if err := f.kc.List(f.ctx, &api.MaintenanceWindowList{}); err != nil { + return fmt.Errorf("CRD MaintainenceWindow is not ready, Reason: %v", err) + } + + if err := f.kc.List(f.ctx, &api.ClusterMaintenanceWindowList{}); err != nil { + return fmt.Errorf("CRD ClusterMaintainenceWindow is not ready, Reason: %v", err) + } + + if err := f.kc.List(f.ctx, &api.ApprovalPolicyList{}); err != nil { + return fmt.Errorf("CRD ApprovalPolicy is not ready, Reason: %v", err) + } + + return nil + }, time.Minute*2, time.Second*10, )