open-nomad/.golangci.yml

99 lines
2.8 KiB
YAML

run:
# timeout for analysis, e.g. 30s, 5m, default is 1m
deadline: 10m
# Modules download mode. If not empty, passed as -mod=<mode> to go tools
module-download-mode: vendor
tests: false
# which dirs to skip: they won't be analyzed;
# can use regexp here: generated.*, regexp is applied on full path;
# default value is empty list, but next dirs are always skipped independently
# from this option's value:
# vendor$, third_party$, testdata$, examples$, Godeps$, builtin$
skip-dirs:
- ui
# which files to skip: they will be analyzed, but issues from them
# won't be reported. Default value is empty list, but there is
# no need to include all autogenerated files, we confidently recognize
# autogenerated files. If it's not please let us know.
skip-files:
- ".*\\.generated\\.go$"
- ".*bindata_assetfs\\.go$"
# output configuration options
output:
# colored-line-number|line-number|json|tab|checkstyle|code-climate, default is "colored-line-number"
format: colored-line-number
# print lines of code with issue, default is true
print-issued-lines: true
# print linter name in the end of issue text, default is true
print-linter-name: true
# all available settings of specific linters
linters-settings:
errcheck:
# report about not checking of errors in type assetions: `a := b.(MyStruct)`;
# default is false: such cases aren't reported by default.
check-type-assertions: false
# [deprecated] comma-separated list of pairs of the form pkg:regex
# the regex is used to ignore names within pkg. (default "fmt:.*").
# see https://github.com/kisielk/errcheck#the-deprecated-method for details
ignore: fmt:.*,io/ioutil:^Read.*
# path to a file containing a list of functions to exclude from checking
# see https://github.com/kisielk/errcheck#excluding-functions for details
# exclude: /path/to/file.txt
govet:
# report about shadowed variables
check-shadowing: false
gofmt:
# simplify code: gofmt with `-s` option, true by default
simplify: true
depguard:
# disallow packages from being used
list-type: blacklist
packages:
- github.com/hashicorp/consul/command/flags
gocritic:
disabled-checks:
- commentFormatting
- deprecatedComment
staticcheck:
# Only enable a single check to start.
# I(jrasell) will work on enabling additional checks when possible.
checks: ["ST1020"]
issues:
exclude:
- ifElseChain
- singleCaseSwitch
- assignOp
- unlambda
linters:
disable-all: true
enable:
- goimports
- gocritic
- misspell
- govet
- deadcode
- varcheck
- ineffassign
- structcheck
- unconvert
- gofmt
- gosimple
- depguard
- staticcheck
# Stretch Goal
#- maligned
fast: false