linters:
  enable:
    - asasalint
    - asciicheck
    - bidichk
    - bodyclose
    - containedctx
    - deadcode
    - decorder
    - dogsled
    - durationcheck
    - errcheck
    - errname
    - exportloopref
    - gci
    - gochecknoinits
    - gofmt
    - gofumpt
    - goimports
    - goprintffuncname
    - gosec
    - gosimple
    - govet
    - grouper
    - importas
    - ineffassign
    - makezero
    - misspell
    - noctx
    - nolintlint
    - nosprintfhostport
    - paralleltest
    - staticcheck
    - structcheck
    - tenv
    - thelper
    - tparallel
    - typecheck
    - unconvert
    - unused
    - varcheck
    - wastedassign
    - whitespace

run:
  timeout: 10m
  skip-files:
    - ".+_test.go"
    - ".+_test_.+.go"

linters-settings:
  importas:
    alias:
      - pkg: github.com/kyverno/kyverno/api/(\w+)/(v[\w\d]+)
        alias: $1$2
      - pkg: k8s.io/apimachinery/pkg/apis/(\w+)/(v[\w\d]+)
        alias: $1$2
      - pkg: k8s.io/api/(\w+)/(v[\w\d]+)
        alias: $1$2
      - pkg: github.com/kyverno/kyverno/pkg/clients/dclient
        alias: dclient
      - pkg: github.com/kyverno/kyverno/pkg/client/clientset/versioned
        alias: kyvernoclient
      - pkg: k8s.io/client-go/kubernetes
        alias: kubernetes
      - pkg: k8s.io/client-go/informers/(\w+)/(v[\w\d]+)
        alias: ${1}${2}informers
      - pkg: k8s.io/client-go/listers/(\w+)/(v[\w\d]+)
        alias: ${1}${2}listers
      - pkg: github.com/kyverno/kyverno/pkg/client/informers/externalversions/(\w+)/(v[\w\d]+)
        alias: ${1}${2}informers
      - pkg: github.com/kyverno/kyverno/pkg/client/listers/(\w+)/(v[\w\d]+)
        alias: ${1}${2}listers