mirror of https://github.com/grafana/grafana
Revert "Chore: Enable cache on golangci linter" (#96069)
Revert "Chore: Enable cache on golangci linter (#95471)"
This reverts commit d5cde0b60a
.
eleijonmarck/lbac-rules/deprecation
parent
a5bef386ad
commit
4e318e6285
@ -1,5 +1,7 @@ |
||||
module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT |
||||
|
||||
go 1.23 |
||||
go 1.22.1 |
||||
|
||||
require github.com/golangci/golangci-lint v1.61.0 // cmd/golangci-lint |
||||
toolchain go1.23.0 |
||||
|
||||
require github.com/golangci/golangci-lint v1.60.1 // cmd/golangci-lint |
||||
|
@ -0,0 +1,315 @@ |
||||
[run] |
||||
timeout = "20m" |
||||
concurrency = 10 |
||||
allow-parallel-runners = true |
||||
|
||||
[linters-settings.exhaustive] |
||||
default-signifies-exhaustive = true |
||||
|
||||
[linters-settings.revive] |
||||
ignore-generated-header = false |
||||
severity = "warning" |
||||
confidence = 3 |
||||
|
||||
[linters-settings.depguard.rules.main] |
||||
allow = [] # allow all |
||||
deny = [ |
||||
{ pkg = "io/ioutil", desc = "Deprecated: As of Go 1.16, the same functionality is now provided by package io or package os, and those implementations should be preferred in new code. See the specific function documentation for details." }, |
||||
{ pkg = "gopkg.in/yaml.v2", desc = "Grafana packages are not allowed to depend on gopkg.in/yaml.v2 as gopkg.in/yaml.v3 is now available" }, |
||||
{ pkg = "github.com/pkg/errors", desc = "Deprecated: Go 1.13 supports the functionality provided by pkg/errors in the standard library." }, |
||||
{ pkg = "github.com/xorcare/pointer", desc = "Use pkg/util.Pointer instead, which is a generic one-liner alternative" }, |
||||
{ pkg = "github.com/gofrs/uuid", desc = "Use github.com/google/uuid instead, which we already depend on." }, |
||||
{ pkg = "github.com/bmizerany/assert", desc = "Use github.com/stretchr/testify/assert instead, which we already depend on." }, |
||||
] |
||||
|
||||
[linters-settings.depguard.rules.coreplugins] |
||||
deny = [ |
||||
{ pkg = "github.com/grafana/grafana/pkg/api", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/cmd", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/cuectx", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/extensions", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/kinds", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/middleware", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/modules", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/registry", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/services", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/build", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/codegen", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/events", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/ifaces", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/kindsysreport", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/mocks", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/plugins", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/setting", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/util", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/bus", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/components", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/expr", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/infra", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/login", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/models", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/server", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/tests", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/web", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
{ pkg = "github.com/grafana/grafana/pkg/tsdb/intervalv2", desc = "Core plugins are not allowed to depend on Grafana core packages" }, |
||||
] |
||||
files = [ |
||||
"**/pkg/tsdb/grafana-pyroscope-datasource/*", |
||||
"**/pkg/tsdb/grafana-pyroscope-datasource/**/*", |
||||
"**/pkg/tsdb/grafana-testdata-datasource/*", |
||||
"**/pkg/tsdb/grafana-testdata-datasource/**/*", |
||||
"**/pkg/tsdb/azuremonitor/*", |
||||
"**/pkg/tsdb/azuremonitor/**/*", |
||||
"**/pkg/tsdb/cloud-monitoring/*", |
||||
"**/pkg/tsdb/cloud-monitoring/**/*", |
||||
"**/pkg/tsdb/mysql/*", |
||||
"**/pkg/tsdb/mysql/**/*", |
||||
"**/pkg/tsdb/parca/*", |
||||
"**/pkg/tsdb/parca/**/*", |
||||
"**/pkg/tsdb/tempo/*", |
||||
"**/pkg/tsdb/tempo/**/*", |
||||
"**/pkg/tsdb/cloudwatch/*", |
||||
"**/pkg/tsdb/cloudwatch/**/*", |
||||
] |
||||
|
||||
[linters-settings.depguard.rules.apiserver] |
||||
list-mode = "lax" |
||||
allow = [ |
||||
"github.com/grafana/grafana/pkg/apimachinery", |
||||
"github.com/grafana/grafana/pkg/apiserver", |
||||
] |
||||
deny = [ |
||||
{ pkg = "github.com/grafana/grafana/pkg", desc = "apiserver is not allowed to import grafana core" } |
||||
] |
||||
files = [ |
||||
"**/pkg/apiserver/*", |
||||
"**/pkg/apiserver/**/*" |
||||
] |
||||
|
||||
[linters-settings.depguard.rules.apimachinery] |
||||
list-mode = "lax" |
||||
allow = [ |
||||
"github.com/grafana/grafana/pkg/apimachinery", |
||||
] |
||||
deny = [ |
||||
{ pkg = "github.com/grafana/grafana/pkg", desc = "apimachinery is not allowed to import grafana core" } |
||||
] |
||||
files = [ |
||||
"**/pkg/apimachinery/*", |
||||
"**/pkg/apimachinery/**/*" |
||||
] |
||||
|
||||
[linters-settings.depguard.rules.aggregator] |
||||
list-mode = "lax" |
||||
allow = [ |
||||
"github.com/grafana/grafana/pkg/aggregator", |
||||
"github.com/grafana/grafana/pkg/semconv", |
||||
"github.com/grafana/grafana/pkg/apimachinery", |
||||
] |
||||
deny = [ |
||||
{ pkg = "github.com/grafana/grafana/pkg", desc = "apimachinery is not allowed to import grafana core" } |
||||
] |
||||
files = [ |
||||
"./pkg/aggregator/*", |
||||
"./pkg/aggregator/**/*" |
||||
] |
||||
|
||||
[linters-settings.depguard.rules.promlib] |
||||
list-mode = "lax" # allow unless explicitely denied |
||||
deny = [ |
||||
{ pkg = "github.com/grafana/grafana/pkg", desc = "promlib is not allowed to import grafana core" } |
||||
] |
||||
allow = [ |
||||
"github.com/grafana/grafana/pkg/promlib" |
||||
] |
||||
files = [ |
||||
"**/pkg/promlib/**/*" |
||||
] |
||||
|
||||
[linters-settings.depguard.rules.storage-unified-resource] |
||||
list-mode = "lax" |
||||
allow = [ |
||||
"github.com/grafana/grafana/pkg/apimachinery", |
||||
] |
||||
deny = [ |
||||
{ pkg = "github.com/grafana/grafana/pkg", desc = "pkg/storage/unified/resource is not allowed to import grafana core" } |
||||
] |
||||
files = [ |
||||
"./pkg/storage/unified/resource/*", |
||||
"./pkg/storage/unified/resource/**/*" |
||||
] |
||||
|
||||
[linters-settings.depguard.rules.storage-unified-apistore] |
||||
list-mode = "lax" |
||||
allow = [ |
||||
"github.com/grafana/grafana/pkg/apimachinery", |
||||
"github.com/grafana/grafana/pkg/apiserver", |
||||
"github.com/grafana/grafana/pkg/unified/resource", |
||||
] |
||||
deny = [ |
||||
{ pkg = "github.com/grafana/grafana/pkg", desc = "pkg/storage/unified/apistore is not allowed to import grafana core" } |
||||
] |
||||
files = [ |
||||
"./pkg/storage/unified/apistore/*", |
||||
"./pkg/storage/unified/apistore/**/*" |
||||
] |
||||
|
||||
[linters-settings.depguard.rules.apps-playlist] |
||||
list-mode = "lax" |
||||
allow = [] |
||||
deny = [ |
||||
{ pkg = "github.com/grafana/grafana/pkg", desc = "apps/playlist is not allowed to import grafana core" } |
||||
] |
||||
files = [ |
||||
"./apps/playlist/*", |
||||
"./apps/playlist/**/*" |
||||
] |
||||
|
||||
[linters-settings.gocritic] |
||||
enabled-checks = ["ruleguard"] |
||||
[linters-settings.gocritic.settings.ruleguard] |
||||
rules = "pkg/ruleguard.rules.go" |
||||
|
||||
[linters-settings.misspell] |
||||
ignore-words = ["Unknwon", "Creater"] |
||||
|
||||
[linters-settings.nakedret] |
||||
max-func-lines = 60 |
||||
|
||||
[linters] |
||||
disable-all = true |
||||
# try to keep this list sorted, please |
||||
enable = [ |
||||
"asciicheck", |
||||
"bodyclose", |
||||
"depguard", |
||||
"dogsled", |
||||
"errcheck", |
||||
"errorlint", |
||||
"exhaustive", |
||||
"exportloopref", |
||||
# "gochecknoinits", |
||||
# "goconst", |
||||
# "gocritic", # Temporarily disabled on 2022-09-09, running into weird bug "ruleguard: execution error: used Run() with an empty rule set; forgot to call Load() first?" |
||||
"gocyclo", |
||||
"goimports", |
||||
"goprintffuncname", |
||||
"gosec", |
||||
"gosimple", |
||||
"govet", |
||||
"ineffassign", |
||||
"misspell", |
||||
"nakedret", |
||||
"prealloc", |
||||
"revive", |
||||
"staticcheck", |
||||
"stylecheck", |
||||
"unconvert", |
||||
"unused", |
||||
"whitespace", |
||||
] |
||||
|
||||
# Disabled linters (might want them later) |
||||
# "unparam" |
||||
# "rowserrcheck" # The linter doesn't detect that both Scan and Close also returns the error message returned by Err. |
||||
|
||||
[issues] |
||||
exclude-use-default = false |
||||
max-same-issues = 0 |
||||
|
||||
# Enable when appropriate |
||||
# Poorly chosen identifier |
||||
[[issues.exclude-rules]] |
||||
linters = ["stylecheck"] |
||||
text = "ST1003" |
||||
|
||||
# Enable when appropriate |
||||
# Dot imports that aren't in external test packages are discouraged. |
||||
[[issues.exclude-rules]] |
||||
linters = ["stylecheck"] |
||||
text = "ST1001" |
||||
|
||||
# Enable when appropriate |
||||
# http.CloseNotifier has been deprecated since Go 1.11 and an alternative has been available since Go 1.7: We currently need it in pkg/web/response_writer.go. |
||||
[[issues.exclude-rules]] |
||||
linters = ["staticcheck"] |
||||
text = "SA1019: http.CloseNotifier" |
||||
|
||||
# strings.Title has been deprecated since Go 1.18 and an alternative has been available since Go 1.0: The rule Title uses for word boundaries does not handle Unicode punctuation properly. |
||||
# Use golang.org/x/text/cases instead. |
||||
[[issues.exclude-rules]] |
||||
linters = ["staticcheck"] |
||||
text = "SA1019: strings.Title" |
||||
|
||||
# go.opentelemetry.io/otel/exporters/jaeger" is deprecated: This module is no longer supported. OpenTelemetry dropped support for Jaeger exporter in July 2023. |
||||
# Jaeger officially accepts and recommends using OTLP. |
||||
# Use [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp] or [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc] instead. |
||||
[[issues.exclude-rules]] |
||||
linters = ["staticcheck"] |
||||
text = "SA1019: \"go.opentelemetry.io/otel/exporters/jaeger\"" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["staticcheck"] |
||||
text = "use fake service and real access control evaluator instead" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "G108" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "G110" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "G201" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "G202" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "G306" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "401" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "402" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "501" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
text = "404" |
||||
|
||||
[[issues.exclude-rules]] |
||||
linters = ["errorlint"] |
||||
text = "non-wrapping format verb for fmt.Errorf" |
||||
|
||||
# TODO: Enable |
||||
[[issues.exclude-rules]] |
||||
linters = ["stylecheck"] |
||||
text = "ST1000" |
||||
|
||||
# TODO: Enable |
||||
[[issues.exclude-rules]] |
||||
linters = ["stylecheck"] |
||||
text = "ST1020" |
||||
|
||||
# TODO: Enable |
||||
[[issues.exclude-rules]] |
||||
linters = ["stylecheck"] |
||||
text = "ST1021" |
||||
|
||||
# Remove this when we have go v1.22 in place |
||||
# https://stackoverflow.com/a/68247837/767660 |
||||
[[issues.exclude-rules]] |
||||
linters = ["gosec"] |
||||
path = '(.+)_test\.go' |
||||
text = "G601" |
@ -1,301 +0,0 @@ |
||||
run: |
||||
timeout: 10m |
||||
concurrency: 10 |
||||
allow-parallel-runners: true |
||||
linters-settings: |
||||
exhaustive: |
||||
default-signifies-exhaustive: true |
||||
revive: |
||||
ignore-generated-header: false |
||||
severity: warning |
||||
confidence: 3 |
||||
depguard: |
||||
rules: |
||||
main: |
||||
allow: [] |
||||
deny: |
||||
- pkg: io/ioutil |
||||
desc: >- |
||||
Deprecated: As of Go 1.16, the same functionality is now provided |
||||
by package io or package os, and those implementations should be |
||||
preferred in new code. See the specific function documentation for |
||||
details. |
||||
- pkg: gopkg.in/yaml.v2 |
||||
desc: >- |
||||
Grafana packages are not allowed to depend on gopkg.in/yaml.v2 as |
||||
gopkg.in/yaml.v3 is now available |
||||
- pkg: github.com/pkg/errors |
||||
desc: >- |
||||
Deprecated: Go 1.13 supports the functionality provided by |
||||
pkg/errors in the standard library. |
||||
- pkg: github.com/xorcare/pointer |
||||
desc: >- |
||||
Use pkg/util.Pointer instead, which is a generic one-liner |
||||
alternative |
||||
- pkg: github.com/gofrs/uuid |
||||
desc: 'Use github.com/google/uuid instead, which we already depend on.' |
||||
- pkg: github.com/bmizerany/assert |
||||
desc: >- |
||||
Use github.com/stretchr/testify/assert instead, which we already |
||||
depend on. |
||||
coreplugins: |
||||
deny: |
||||
- pkg: github.com/grafana/grafana/pkg/api |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/cmd |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/cuectx |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/extensions |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/kinds |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/middleware |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/modules |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/registry |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/services |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/build |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/codegen |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/events |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/ifaces |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/kindsysreport |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/mocks |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/plugins |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/setting |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/util |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/bus |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/components |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/expr |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/infra |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/login |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/models |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/server |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/tests |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/web |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
- pkg: github.com/grafana/grafana/pkg/tsdb/intervalv2 |
||||
desc: Core plugins are not allowed to depend on Grafana core packages |
||||
files: |
||||
- '**/pkg/tsdb/grafana-pyroscope-datasource/*' |
||||
- '**/pkg/tsdb/grafana-pyroscope-datasource/**/*' |
||||
- '**/pkg/tsdb/grafana-testdata-datasource/*' |
||||
- '**/pkg/tsdb/grafana-testdata-datasource/**/*' |
||||
- '**/pkg/tsdb/azuremonitor/*' |
||||
- '**/pkg/tsdb/azuremonitor/**/*' |
||||
- '**/pkg/tsdb/cloud-monitoring/*' |
||||
- '**/pkg/tsdb/cloud-monitoring/**/*' |
||||
- '**/pkg/tsdb/mysql/*' |
||||
- '**/pkg/tsdb/mysql/**/*' |
||||
- '**/pkg/tsdb/parca/*' |
||||
- '**/pkg/tsdb/parca/**/*' |
||||
- '**/pkg/tsdb/tempo/*' |
||||
- '**/pkg/tsdb/tempo/**/*' |
||||
- '**/pkg/tsdb/cloudwatch/*' |
||||
- '**/pkg/tsdb/cloudwatch/**/*' |
||||
apiserver: |
||||
list-mode: lax |
||||
allow: |
||||
- github.com/grafana/grafana/pkg/apimachinery |
||||
- github.com/grafana/grafana/pkg/apiserver |
||||
deny: |
||||
- pkg: github.com/grafana/grafana/pkg |
||||
desc: apiserver is not allowed to import grafana core |
||||
files: |
||||
- '**/pkg/apiserver/*' |
||||
- '**/pkg/apiserver/**/*' |
||||
apimachinery: |
||||
list-mode: lax |
||||
allow: |
||||
- github.com/grafana/grafana/pkg/apimachinery |
||||
deny: |
||||
- pkg: github.com/grafana/grafana/pkg |
||||
desc: apimachinery is not allowed to import grafana core |
||||
files: |
||||
- '**/pkg/apimachinery/*' |
||||
- '**/pkg/apimachinery/**/*' |
||||
aggregator: |
||||
list-mode: lax |
||||
allow: |
||||
- github.com/grafana/grafana/pkg/aggregator |
||||
- github.com/grafana/grafana/pkg/semconv |
||||
- github.com/grafana/grafana/pkg/apimachinery |
||||
deny: |
||||
- pkg: github.com/grafana/grafana/pkg |
||||
desc: apimachinery is not allowed to import grafana core |
||||
files: |
||||
- ./pkg/aggregator/* |
||||
- ./pkg/aggregator/**/* |
||||
promlib: |
||||
list-mode: lax |
||||
deny: |
||||
- pkg: github.com/grafana/grafana/pkg |
||||
desc: promlib is not allowed to import grafana core |
||||
allow: |
||||
- github.com/grafana/grafana/pkg/promlib |
||||
files: |
||||
- '**/pkg/promlib/**/*' |
||||
storage-unified-resource: |
||||
list-mode: lax |
||||
allow: |
||||
- github.com/grafana/grafana/pkg/apimachinery |
||||
deny: |
||||
- pkg: github.com/grafana/grafana/pkg |
||||
desc: pkg/storage/unified/resource is not allowed to import grafana core |
||||
files: |
||||
- ./pkg/storage/unified/resource/* |
||||
- ./pkg/storage/unified/resource/**/* |
||||
storage-unified-apistore: |
||||
list-mode: lax |
||||
allow: |
||||
- github.com/grafana/grafana/pkg/apimachinery |
||||
- github.com/grafana/grafana/pkg/apiserver |
||||
- github.com/grafana/grafana/pkg/unified/resource |
||||
deny: |
||||
- pkg: github.com/grafana/grafana/pkg |
||||
desc: pkg/storage/unified/apistore is not allowed to import grafana core |
||||
files: |
||||
- ./pkg/storage/unified/apistore/* |
||||
- ./pkg/storage/unified/apistore/**/* |
||||
apps-playlist: |
||||
list-mode: lax |
||||
allow: [] |
||||
deny: |
||||
- pkg: github.com/grafana/grafana/pkg |
||||
desc: apps/playlist is not allowed to import grafana core |
||||
files: |
||||
- ./apps/playlist/* |
||||
- ./apps/playlist/**/* |
||||
gocritic: |
||||
enabled-checks: |
||||
- ruleguard |
||||
settings: |
||||
ruleguard: |
||||
rules: pkg/ruleguard.rules.go |
||||
misspell: |
||||
ignore-words: |
||||
- Unknwon |
||||
- Creater |
||||
nakedret: |
||||
max-func-lines: 60 |
||||
linters: |
||||
disable-all: true |
||||
enable: |
||||
- asciicheck |
||||
- bodyclose |
||||
- depguard |
||||
- dogsled |
||||
- errcheck |
||||
- errorlint |
||||
- exhaustive |
||||
- gocyclo |
||||
- goimports |
||||
- goprintffuncname |
||||
- gosec |
||||
- gosimple |
||||
- govet |
||||
- ineffassign |
||||
- misspell |
||||
- nakedret |
||||
- prealloc |
||||
- revive |
||||
- staticcheck |
||||
- stylecheck |
||||
- unconvert |
||||
- unused |
||||
- whitespace |
||||
issues: |
||||
exclude-use-default: false |
||||
max-same-issues: 0 |
||||
exclude-dirs: |
||||
- devenv |
||||
- scripts |
||||
exclude-files: |
||||
- pkg/util/xorm/*.go |
||||
- pkg/build/wire/*.go |
||||
exclude-rules: |
||||
- linters: |
||||
- stylecheck |
||||
text: ST1003 |
||||
- linters: |
||||
- stylecheck |
||||
text: ST1001 |
||||
- linters: |
||||
- staticcheck |
||||
text: 'SA1019: http.CloseNotifier' |
||||
- linters: |
||||
- staticcheck |
||||
text: 'SA1019: strings.Title' |
||||
- linters: |
||||
- staticcheck |
||||
text: 'SA1019: "go.opentelemetry.io/otel/exporters/jaeger"' |
||||
- linters: |
||||
- staticcheck |
||||
text: use fake service and real access control evaluator instead |
||||
- linters: |
||||
- gosec |
||||
text: G108 |
||||
- linters: |
||||
- gosec |
||||
text: G110 |
||||
- linters: |
||||
- gosec |
||||
text: G115 |
||||
- linters: |
||||
- gosec |
||||
text: G201 |
||||
- linters: |
||||
- gosec |
||||
text: G202 |
||||
- linters: |
||||
- gosec |
||||
text: G306 |
||||
- linters: |
||||
- gosec |
||||
text: '401' |
||||
- linters: |
||||
- gosec |
||||
text: '402' |
||||
- linters: |
||||
- gosec |
||||
text: '501' |
||||
- linters: |
||||
- gosec |
||||
text: '404' |
||||
- linters: |
||||
- errorlint |
||||
text: non-wrapping format verb for fmt.Errorf |
||||
- linters: |
||||
- stylecheck |
||||
text: ST1000 |
||||
- linters: |
||||
- stylecheck |
||||
text: ST1020 |
||||
- linters: |
||||
- stylecheck |
||||
text: ST1021 |
||||
- linters: |
||||
- gosec |
||||
path: (.+)_test\.go |
||||
text: G601 |
||||
|
Loading…
Reference in new issue