mirror of
https://github.com/open-cluster-management-io/ocm.git
synced 2026-02-14 10:00:11 +00:00
* Refactor code to fix lint warning Signed-off-by: Jian Qiu <jqiu@redhat.com> * enable lint for testing files Signed-off-by: Jian Qiu <jqiu@redhat.com> --------- Signed-off-by: Jian Qiu <jqiu@redhat.com>
235 lines
7.5 KiB
YAML
235 lines
7.5 KiB
YAML
# Copyright Contributors to the Open Cluster Management project
|
|
|
|
run:
|
|
# default concurrency is an available CPU number
|
|
concurrency: 10
|
|
# timeout for analysis, e.g. 30s, 5m, default is 1m
|
|
deadline: 5m
|
|
|
|
# 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:
|
|
- genfiles$
|
|
- vendor$
|
|
- bindata$
|
|
|
|
# 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:
|
|
- ".*\\.pb\\.go"
|
|
- ".*\\.gen\\.go"
|
|
|
|
linters:
|
|
# please, do not use `enable-all`: it's deprecated and will be removed soon.
|
|
# inverted configuration with `enable-all` and `disable` is not scalable during updates of golangci-lint
|
|
disable-all: true
|
|
enable:
|
|
- unused
|
|
- errcheck
|
|
- goconst
|
|
- gocritic
|
|
- gofmt
|
|
- goimports
|
|
- gosec
|
|
- gosimple
|
|
- govet
|
|
- ineffassign
|
|
- lll
|
|
- misspell
|
|
- typecheck
|
|
- unconvert
|
|
- gci
|
|
# don't enable:
|
|
# - gocyclo
|
|
# - bodyclose
|
|
# - depguard
|
|
# - dogsled
|
|
# - dupl
|
|
# - funlen
|
|
# - gochecknoglobals
|
|
# - gochecknoinits
|
|
# - gocognit
|
|
# - godox
|
|
# - maligned
|
|
# - nakedret
|
|
# - prealloc
|
|
# - scopelint
|
|
# - whitespace
|
|
|
|
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
|
|
|
|
# report about assignment of errors to blank identifier: `num, _ := strconv.Atoi(numStr)`;
|
|
# default is false: such cases aren't reported by default.
|
|
check-blank: false
|
|
govet:
|
|
# report about shadowed variables
|
|
check-shadowing: false
|
|
golint:
|
|
# minimal confidence for issues, default is 0.8
|
|
min-confidence: 0.0
|
|
gofmt:
|
|
# simplify code: gofmt with `-s` option, true by default
|
|
simplify: true
|
|
# goimports:
|
|
# # put imports beginning with prefix after 3rd-party packages;
|
|
# # it's a comma-separated list of prefixes
|
|
# local-prefixes: open-cluster-management.io/ocm/
|
|
maligned:
|
|
# print struct with more effective memory layout or not, false by default
|
|
suggest-new: true
|
|
misspell:
|
|
# Correct spellings using locale preferences for US or UK.
|
|
# Default is to use a neutral variety of English.
|
|
# Setting locale to US will correct the British spelling of 'colour' to 'color'.
|
|
locale: US
|
|
ignore-words:
|
|
- cancelled
|
|
- cancelling
|
|
lll:
|
|
# max line length, lines longer will be reported. Default is 120.
|
|
# '\t' is counted as 1 character by default, and can be changed with the tab-width option
|
|
line-length: 160
|
|
# tab width in spaces. Default to 1.
|
|
tab-width: 1
|
|
unused:
|
|
# treat code as a program (not a library) and report unused exported identifiers; default is false.
|
|
# XXX: if you enable this setting, unused will report a lot of false-positives in text editors:
|
|
# if it's called for subdir of a project it can't find funcs usages. All text editor integrations
|
|
# with golangci-lint call it on a directory with the changed file.
|
|
check-exported: false
|
|
unparam:
|
|
# call graph construction algorithm (cha, rta). In general, use cha for libraries,
|
|
# and rta for programs with main packages. Default is cha.
|
|
algo: cha
|
|
|
|
# Inspect exported functions, default is false. Set to true if no external program/library imports your code.
|
|
# XXX: if you enable this setting, unparam will report a lot of false-positives in text editors:
|
|
# if it's called for subdir of a project it can't find external interfaces. All text editor integrations
|
|
# with golangci-lint call it on a directory with the changed file.
|
|
check-exported: false
|
|
gocritic:
|
|
enabled-checks:
|
|
- appendCombine
|
|
- argOrder
|
|
# - assignOp
|
|
- badCond
|
|
- boolExprSimplify
|
|
# - builtinShadow
|
|
- captLocal
|
|
- caseOrder
|
|
- codegenComment
|
|
# - commentedOutCode
|
|
- commentedOutImport
|
|
- defaultCaseOrder
|
|
- deprecatedComment
|
|
- docStub
|
|
- dupArg
|
|
- dupBranchBody
|
|
- dupCase
|
|
- dupSubExpr
|
|
- elseif
|
|
- emptyFallthrough
|
|
- equalFold
|
|
- flagDeref
|
|
- flagName
|
|
- hexLiteral
|
|
- indexAlloc
|
|
- initClause
|
|
- methodExprCall
|
|
- nilValReturn
|
|
# - octalLiteral
|
|
- offBy1
|
|
- rangeExprCopy
|
|
- regexpMust
|
|
- sloppyLen
|
|
- stringXbytes
|
|
- switchTrue
|
|
- typeAssertChain
|
|
- typeSwitchVar
|
|
- typeUnparen
|
|
- underef
|
|
- unlambda
|
|
- unnecessaryBlock
|
|
- unslice
|
|
- valSwap
|
|
- weakCond
|
|
|
|
# Unused
|
|
# - yodaStyleExpr
|
|
# - appendAssign
|
|
# - commentFormatting
|
|
# - emptyStringTest
|
|
# - exitAfterDefer
|
|
# - ifElseChain
|
|
# - hugeParam
|
|
# - importShadow
|
|
# - nestingReduce
|
|
# - paramTypeCombine
|
|
# - ptrToRefParam
|
|
# - rangeValCopy
|
|
# - singleCaseSwitch
|
|
# - sloppyReassign
|
|
# - unlabelStmt
|
|
# - unnamedResult
|
|
# - wrapperFunc
|
|
gci:
|
|
# Section configuration to compare against.
|
|
# Section names are case-insensitive and may contain parameters in ().
|
|
# The default order of sections is `standard > default > custom > blank > dot`,
|
|
# If `custom-order` is `true`, it follows the order of `sections` option.
|
|
# Default: ["standard", "default"]
|
|
sections:
|
|
- standard # Standard section: captures all standard packages.
|
|
- default # Default section: contains all imports that could not be matched to another section type.
|
|
- prefix(open-cluster-management.io) # Custom section: groups all imports with the specified Prefix.
|
|
- prefix(open-cluster-management.io/ocm)
|
|
# - blank # Blank section: contains all blank imports. This section is not present unless explicitly enabled.
|
|
# - dot # Dot section: contains all dot imports. This section is not present unless explicitly enabled.
|
|
# Skip generated files.
|
|
# Default: true
|
|
skip-generated: true
|
|
# Enable custom order of sections.
|
|
# If `true`, make the section order the same as the order of `sections`.
|
|
# Default: false
|
|
custom-order: true
|
|
issues:
|
|
# We want to make sure we get a full report every time. Setting these
|
|
# to zero disables the limit.
|
|
max-issues-per-linter: 0
|
|
|
|
# List of regexps of issue texts to exclude, empty list by default.
|
|
# But independently from this option we use default exclude patterns,
|
|
# it can be disabled by `exclude-use-default: false`. To list all
|
|
# excluded by default patterns execute `golangci-lint run --help`
|
|
exclude:
|
|
- composite literal uses unkeyed fields
|
|
|
|
exclude-rules:
|
|
# Exclude some linters from running on test files.
|
|
- path: _test\.go$|^tests/|^samples/
|
|
linters:
|
|
- errcheck
|
|
- maligned
|
|
- goconst
|
|
|
|
# Independently from option `exclude` we use default exclude patterns,
|
|
# it can be disabled by this option. To list all
|
|
# excluded by default patterns execute `golangci-lint run --help`.
|
|
# Default value for this option is true.
|
|
exclude-use-default: true
|
|
|
|
# Maximum issues count per one linter. Set to 0 to disable. Default is 50.
|
|
max-per-linter: 0
|
|
|
|
# Maximum count of issues with the same text. Set to 0 to disable. Default is 3.
|
|
max-same-issues: 0
|