forked from containerd/containerd
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.golangci.yml
More file actions
124 lines (124 loc) · 3.24 KB
/
.golangci.yml
File metadata and controls
124 lines (124 loc) · 3.24 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
version: "2"
linters:
enable:
- copyloopvar # Checks for loop variable copies in Go 1.22+
- depguard # Checks for dependencies that should not be (re)introduced. See "settings" for further details.
- dupword # Checks for duplicate words in the source code
- gosec
- misspell
- modernize # Suggests modernizations to Go code; see https://pkg.go.dev/golang.org/x/tools/go/analysis/passes/modernize
- nolintlint
- revive
- unconvert
- usetesting
disable:
- errcheck
settings:
depguard:
rules:
main:
deny:
- pkg: github.com/opencontainers/runc
desc: We don't want to depend on runc (libcontainer), unless there is no other option; see https://github.com/opencontainers/runc/issues/3028.
forbidigo:
forbid:
- pkg: ^regexp$
msg: Use internal/lazyregexp.New instead.
gosec:
# The following issues surfaced when `gosec` linter
# was enabled. They are temporarily excluded to unblock
# the existing workflow, but still to be addressed by
# future works.
excludes:
- G204
- G305
- G306
- G402
- G404
- G115
- G103
- G104
- G301
- G302
- G304
modernize:
disable:
# TODO(thaJeztah): enable testingcontext once github.com/AdamKorcz/go-118-fuzz-build is updated.
# see https://github.com/containerd/containerd/pull/13022#discussion_r2937038804
- testingcontext
staticcheck:
checks:
- all
- -QF1008 # Excludes QF1008 from staticcheck
- -ST1000
- -ST1020
- -ST1021
revive:
rules:
- name: package-comments
severity: warning
disabled: true
exclude: [ "" ]
nolintlint:
allow-unused: true
exclusions:
generated: lax
rules:
# Metric descriptors are currently only used for linux
- path: cri[\\/]server[\\/]list_metric_descriptors.go
linters:
- unused
- path: cmd[\\/]containerd[\\/]builtins[\\/]
text: 'blank-imports:'
- path: contrib[\\/]fuzz[\\/]
text: 'exported: func name will be used as fuzz.Fuzz'
- path: archive[\\/]tarheader[\\/]
# conversion is necessary on Linux, unnecessary on macOS
text: unnecessary conversion
- path: integration[\\/]client
text: 'dot-imports:'
- linters:
- revive
text: if-return
- linters:
- revive
text: empty-block
- linters:
- revive
text: superfluous-else
- linters:
- revive
text: unused-parameter
- linters:
- revive
text: unreachable-code
- linters:
- revive
text: redefines-builtin-id
- linters:
- forbidigo
text: 'use of `regexp.MustCompile` forbidden'
path: _test\.go
paths:
- api
- cluster
- docs
- docs/man
- releases
- test
issues:
max-issues-per-linter: 0
max-same-issues: 0
formatters:
enable:
- gofmt
- goimports
exclusions:
generated: strict
paths:
- api
- cluster
- docs
- docs/man
- releases
- test