diff --git a/.golangci.yml b/.golangci.yml index a0a6fbf9c80e..f3b5b346d52c 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -25,16 +25,24 @@ linters: linters-settings: depguard: - packages: - - gopkg.in/yaml* - additional-guards: - # Only allow usages of the k8s cloud provider from within the k0s cloud - # provider package. This is to ensure that it's not leaking global flags - # into k0s. - - packages: - - k8s.io/cloud-provider* - ignore-file-rules: - - "**/pkg/k0scloudprovider/*.go" + rules: + yaml: + list-mode: lax + deny: + - pkg: gopkg.in/yaml.v2 + desc: Use sigs.k8s.io/yaml. + - pkg: gopkg.in/yaml.v3 + desc: Use sigs.k8s.io/yaml. + cloud-provider: + list-mode: lax + files: + - "!**/pkg/k0scloudprovider/*.go" + deny: + - pkg: k8s.io/cloud-provider + desc: >- + Usages of the k8s cloud provider are only allowed from within the + k0s cloud provider package. This is to ensure that it's not + leaking global flags into k0s. golint: min-confidence: 0 goheader: @@ -43,6 +51,12 @@ linters-settings: regexp: year: 202[0-9] + revive: + rules: + # This forbids to name variables "close", which seems natural for "close" functions. + - name: redefines-builtin-id + disabled: true + issues: max-issues-per-linter: 0 max-same-issues: 0 diff --git a/hack/tools/Makefile.variables b/hack/tools/Makefile.variables index 352fb509fb02..a00d8cc64c94 100644 --- a/hack/tools/Makefile.variables +++ b/hack/tools/Makefile.variables @@ -1,3 +1,3 @@ controller-gen_version = 0.13.0 go-bindata_version = 3.23.0+incompatible -golangci-lint_version = 1.51.2 +golangci-lint_version = 1.55.2 diff --git a/internal/pkg/sysinfo/probes/linux/cgroup_controllers.go b/internal/pkg/sysinfo/probes/linux/cgroup_controllers.go index 6df7902b5650..ca806124297d 100644 --- a/internal/pkg/sysinfo/probes/linux/cgroup_controllers.go +++ b/internal/pkg/sysinfo/probes/linux/cgroup_controllers.go @@ -55,6 +55,7 @@ type cgroupControllerProbe struct { func (c *cgroupControllerProbe) Probe(reporter probes.Reporter) error { desc := probes.NewProbeDesc(fmt.Sprintf("cgroup controller %q", c.name), c.path) + //revive:disable:indent-error-flow if sys, err := c.probeSystem(); err != nil { return reportCgroupSystemErr(reporter, desc, err) } else if available, err := sys.probeController(c.name); err != nil { diff --git a/internal/pkg/sysinfo/probes/linux/kernel.go b/internal/pkg/sysinfo/probes/linux/kernel.go index 96afe95cbc4c..2ca2be67da15 100644 --- a/internal/pkg/sysinfo/probes/linux/kernel.go +++ b/internal/pkg/sysinfo/probes/linux/kernel.go @@ -37,6 +37,7 @@ func (l *LinuxProbes) AssertKernelRelease(assert func(string) string) { l.Set("kernelRelease", func(path probes.ProbePath, current probes.Probe) probes.Probe { return probes.ProbeFn(func(r probes.Reporter) error { desc := probes.NewProbeDesc("Linux kernel release", path) + //revive:disable:indent-error-flow if uname, err := l.probeUname(); err != nil { return r.Error(desc, err) } else if uname.osRelease.truncated { diff --git a/internal/pkg/sysinfo/probes/linux/linux.go b/internal/pkg/sysinfo/probes/linux/linux.go index 1e604f3355d9..0f936746a901 100644 --- a/internal/pkg/sysinfo/probes/linux/linux.go +++ b/internal/pkg/sysinfo/probes/linux/linux.go @@ -70,6 +70,7 @@ func (l *LinuxProbes) Probe(reporter probes.Reporter) error { func (l *LinuxProbes) probe(reporter probes.Reporter) error { desc := probes.NewProbeDesc("Operating system", l.path) + //revive:disable:indent-error-flow if uname, err := l.probeUname(); err != nil { return reporter.Error(desc, err) } else if uname.osName.value == "Linux" {