run:
  tests: false
  timeout: 5m
  skip-dirs:
    - github.com/allinbits/starport-operator/*

linters:
  disable-all: true
  enable:
    - bodyclose
    - deadcode
    - depguard
    - dogsled
    - errcheck
    - goconst
    - gocritic
    - gofmt
    - goimports
    #    - revive // TODO: enable, being disabled as we use blank imports and also needs changing var names(poolId -> poolID)
    - gosec
    - gosimple
    - govet
    - ineffassign
    - misspell
    - nakedret
    - prealloc
    - exportloopref
    - staticcheck
    - structcheck
    - stylecheck
    - typecheck
    - unconvert
    - unused
    - varcheck

issues:
  exclude-rules:
    - text: "ST1003:"
      linters:
        - stylecheck

linters-settings:
  dogsled:
    max-blank-identifiers: 3
  maligned:
    # print struct with more effective memory layout or not, false by default
    suggest-new: true
  golint:
    # minimal confidence for issues, default is 0.8
    min-confidence: 0
  prealloc:
    # XXX: we don't recommend using this linter before doing performance profiling.
    # For most programs usage of prealloc will be a premature optimization.

    # Report preallocation suggestions only on simple loops that have no returns/breaks/continues/gotos in them.
    # True by default.
    simple: false
    range-loops: true # Report preallocation suggestions on range loops, true by default
    for-loops: true # Report preallocation suggestions on for loops, false by default