diff --git a/.golangci.yaml b/.golangci.yaml new file mode 100644 index 00000000000..208f72be982 --- /dev/null +++ b/.golangci.yaml @@ -0,0 +1,18 @@ +run: + timeout: 30m + skip-files: + - "^zz_generated.*" + +issues: + max-same-issues: 0 + +linters: + disable-all: true + enable: # please keep this alphabetized + - deadcode + - ineffassign + - unused + - varcheck +linters-settings: # please keep this alphabetized + unused: + go: "1.17" diff --git a/hack/verify-golangci-lint.sh b/hack/verify-golangci-lint.sh index 237352b678f..decaca0d56b 100755 --- a/hack/verify-golangci-lint.sh +++ b/hack/verify-golangci-lint.sh @@ -43,12 +43,15 @@ popd >/dev/null cd "${KUBE_ROOT}" +# The config is in ${KUBE_ROOT}/.golangci.yaml echo 'running golangci-lint ' -golangci-lint run \ - --timeout 30m \ - --disable-all \ - -E deadcode \ - -E unused \ - -E varcheck \ - -E ineffassign \ - -E staticcheck +if [[ "$#" > 0 ]]; then + golangci-lint run "$@" +else + golangci-lint run ./... + for d in staging/src/k8s.io/*; do + pushd ./vendor/k8s.io/$(basename "$d") >/dev/null + golangci-lint run ./... + popd >/dev/null + done +fi