-
Notifications
You must be signed in to change notification settings - Fork 27
Expand file tree
/
Copy path.golangci.yml
More file actions
189 lines (189 loc) · 4.91 KB
/
.golangci.yml
File metadata and controls
189 lines (189 loc) · 4.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
version: "2"
run:
build-tags:
- tools
- e2e
allow-parallel-runners: true
linters:
default: none
enable:
- asasalint
- asciicheck
- bodyclose
- containedctx
- copyloopvar
- decorder
- dogsled
- errcheck
- errchkjson
- goconst
- gocyclo
- godot
- goprintffuncname
- govet
- ineffassign
- misspell
- nakedret
- nilerr
- noctx
- nolintlint
- nosprintfhostport
- prealloc
- predeclared
- reassign
- rowserrcheck
#- staticcheck
- unconvert
- unparam
- unused
- usestdlibvars
- whitespace
settings:
gocritic:
disabled-checks:
- appendAssign
- dupImport
- evalOrder
- ifElseChain
- octalLiteral
- regexpSimplify
- sloppyReassign
- truncateCmp
- typeDefFirst
- unnamedResult
- unnecessaryDefer
- whyNoLint
- wrapperFunc
enabled-tags:
- experimental
gocyclo:
min-complexity: 20
godot:
scope: toplevel
exclude:
- ^ \+.*
- ^ ANCHOR.*
gosec:
excludes:
- G307
- G108
staticcheck:
checks:
- all
# QF1006: could lift into loop condition
- -QF1006
# QF1007: could merge conditional assignment into variable declaration
- -QF1007
# QF1008 could remove embedded field from selector
- -QF1008
# ST1001: should not use dot imports
- -ST1001
importas:
alias:
- pkg: k8s.io/api/core/v1
alias: corev1
- pkg: k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1
alias: apiextensionsv1
- pkg: k8s.io/apimachinery/pkg/apis/meta/v1
alias: metav1
- pkg: k8s.io/apimachinery/pkg/api/errors
alias: apierrors
- pkg: k8s.io/apimachinery/pkg/util/errors
alias: kerrors
- pkg: sigs.k8s.io/controller-runtime
alias: ctrl
no-unaliased: true
nolintlint:
require-specific: true
allow-unused: false
exclusions:
generated: lax
rules:
- linters:
- revive
text: 'exported: exported method .*\.(Reconcile|SetupWithManager|SetupWebhookWithManager) should have comment or be unexported'
- linters:
- errcheck
text: Error return value of .((os\.)?std(out|err)\..*|.*Close|.*Flush|os\.Remove(All)?|.*print(f|ln)?|os\.(Un)?Setenv). is not checked
- linters:
- revive
text: exported (method|function|type|const) (.+) should have comment or be unexported
source: (func|type).*Fake.*
- linters:
- revive
path: fake_\.go
text: exported (method|function|type|const) (.+) should have comment or be unexported
- linters:
- revive
path: (framework|e2e)/.*.go
text: exported (method|function|type|const) (.+) should have comment or be unexported
- linters:
- unparam
text: always receives
- path: _test\.go
text: should not use dot imports
- path: (framework|e2e)/.*.go
text: should not use dot imports
- path: _test\.go
text: cyclomatic complexity
- linters:
- gocritic
text: 'appendAssign: append result not assigned to the same slice'
- linters:
- staticcheck
path: .*(api|types)\/.*\/.*conversion.*\.go$
text: 'SA1019: in.(.+) is deprecated'
- linters:
- revive
path: .*(api|types)\/.*\/.*conversion.*\.go$
text: exported (method|function|type|const) (.+) should have comment or be unexported
- linters:
- revive
path: .*(api|types)\/.*\/.*conversion.*\.go$
text: 'var-naming: don''t use underscores in Go names;'
- linters:
- revive
path: .*(api|types)\/.*\/.*conversion.*\.go$
text: 'receiver-naming: receiver name'
- linters:
- staticcheck
path: .*(api|types)\/.*\/.*conversion.*\.go$
text: 'ST1003: should not use underscores in Go names;'
- linters:
- staticcheck
path: .*(api|types)\/.*\/.*conversion.*\.go$
text: 'ST1016: methods on the same type should have the same receiver name'
- linters:
- gocritic
path: _test\.go
text: 'deferInLoop: Possible resource leak, ''defer'' is called in the ''for'' loop'
paths:
- zz_generated.*\.go$
- third_party$
- builtin$
- examples$
issues:
max-issues-per-linter: 0
max-same-issues: 0
formatters:
enable:
- gofmt
- goimports
settings:
gci:
sections:
- standard
- default
- prefix(github.com/IBM)
- prefix(k8s.io)
- prefix(sigs.k8s.io)
- blank
- dot
exclusions:
generated: lax
paths:
- zz_generated.*\.go$
- third_party$
- builtin$
- examples$
- _test\.go