Files
talos-cloud-controller-manager/.golangci.yml
Serge Logvinov 9c000cf546 chore: bump deps
Update deps

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
2025-07-29 14:38:53 +07:00

149 lines
3.1 KiB
YAML

version: "2"
run:
build-tags:
- integration
- integration_api
- integration_cli
- integration_k8s
- integration_provision
issues-exit-code: 1
tests: true
output:
formats:
text:
path: stdout
print-linter-name: true
print-issued-lines: true
colors: false
linters:
default: all
disable:
# - contextcheck
- depguard
# - dupword
- errorlint
- exhaustruct
- err113
- forbidigo
- forcetypeassert
- funlen
- gochecknoglobals
- gochecknoinits
- gocognit
- godox
- godot
- gosec
- inamedparam
- ireturn
- maintidx
- mnd
- musttag
- nakedret
- nestif
- nilnil
- nolintlint
- nonamedreturns
- paralleltest
- perfsprint
- promlinter
- protogetter
- recvcheck
- tagalign
- tagliatelle
- testifylint
- testpackage
- thelper
- varnamelen
- wrapcheck
# - nlreturn
- wsl
# temporarily disabled linters
- copyloopvar
- intrange
- noinlineerr
settings:
wsl_v5:
allow-first-in-block: true
allow-whole-block: false
branch-max-lines: 2
cyclop:
max-complexity: 30
dupl:
threshold: 100
errcheck:
check-type-assertions: false
check-blank: true
exclude-functions:
- fmt.Fprintln
- fmt.Fprintf
- fmt.Fprint
goconst:
min-len: 3
min-occurrences: 3
gocyclo:
min-complexity: 30
gomoddirectives:
replace-local: true
replace-allow-list: []
retract-allow-no-explanation: false
exclude-forbidden: true
lll:
line-length: 200
tab-width: 1
misspell:
locale: US
nolintlint:
require-explanation: false
require-specific: true
allow-unused: false
prealloc:
simple: true
range-loops: true
for-loops: false
staticcheck:
checks:
[
"all",
"-ST1000",
"-ST1003",
"-ST1016",
"-ST1020",
"-ST1021",
"-ST1022",
"-QF1001",
"-QF1008",
]
unused:
local-variables-are-used: false
exclusions:
paths:
# copied from kubernetes repo
- pkg/names
- pkg/nodeipam/config
- pkg/utils/controller/node
- pkg/nodeipam/ipam/cidrset
- cmd/talos-cloud-controller-manager/options/nodeipamcontroller.go
- pkg/nodeipam/ipam/range_allocator.go
- pkg/nodeipam/ipam/cloud_allocator.go
issues:
max-issues-per-linter: 0
max-same-issues: 0
uniq-by-line: true
new: false
formatters:
enable:
- gci
- gofmt
- gofumpt
- goimports
settings:
gci:
sections:
- standard # Captures all standard packages if they do not match another section.
- default # Contains all imports that could not be matched to another section type.
- prefix(github.com/cosi-project) # Groups all imports with the specified Prefix.
- prefix(github.com/siderolabs) # Groups all imports with the specified Prefix.
- prefix(k8s.io) # Groups all imports with the specified Prefix.