| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # options for analysis running |
| run: |
| issues-exit-code: 1 |
| skip-dirs-use-default: true |
| modules-download-mode: readonly |
| deadline: 5m |
| skip-dirs: |
| - pkg/client/clientset |
| - pkg/client/informers |
| - pkg/client/listers |
| skip-files: |
| - pkg/apis/yunikorn.apache.org/v1alpha1/zz_generated.deepcopy.go |
| |
| # settings of specific linters |
| linters-settings: |
| errcheck: |
| check-type-assertions: true |
| check-blank: true |
| golint: |
| min-confidence: 0.8 |
| gofmt: |
| simplify: true |
| goimports: |
| local-prefixes: github.com/apache/incubator-yunikorn |
| govet: |
| check-shadowing: true |
| funlen: |
| lines: 120 |
| statements: 80 |
| depguard: |
| list-type: blacklist |
| include-go-root: false |
| packages: |
| - github.com/sirupsen/logrus |
| - github.com/stretchr/testify |
| packages-with-error-messages: |
| github.com/sirupsen/logrus: "logging is standardised via yunikorn logger and zap" |
| github.com/stretchr/testify: "test assertions must use gotest.tools/assert" |
| |
| # linters to use |
| linters: |
| disable-all: true |
| fast: false |
| enable: |
| - errcheck |
| - unused |
| - staticcheck |
| - gosimple |
| - structcheck |
| - varcheck |
| - ineffassign |
| - deadcode |
| - funlen |
| - golint |
| - gofmt |
| - goimports |
| - govet |
| - goconst |
| - depguard |
| - nakedret |
| - gocritic |
| - godox |
| - gosec |
| - dogsled |
| - whitespace |
| |
| issues: |
| exclude-use-default: true |
| |
| # Maximum issues count per one linter. Set to 0 to disable. Default is 50. |
| max-issues-per-linter: 0 |
| |
| # Maximum count of issues with the same text. Set to 0 to disable. Default is 3. |
| max-same-issues: 0 |
| |
| # Show only new issues: if there are unstaged changes or untracked files, |
| # only those changes are analyzed, else only changes in HEAD~ are analyzed. |
| # It's a super-useful option for integration of golangci-lint into existing |
| # large codebase. It's not practical to fix all existing issues at the moment |
| # of integration: much better don't allow issues in new code. |
| # Default is false. |
| new: false |
| |
| # Show only new issues created after git revision `REV` |
| # new-from-rev: REV |
| |
| # Show only new issues created in git patch with set file path. |
| # new-from-patch: path/to/patch/file |
| |