code_quality job is not reporting on lint errors
Running make lint
locally returns a bunch of errors, such as:
make lint
go run github.com/golangci/golangci-lint/cmd/golangci-lint@v1.52.2 run ./... --out-format colored-line-number -v | tee
INFO [config_reader] Config search paths: [./ /Users/jaime/dev/gitlab/gdk/gitlab-pages /Users/jaime/dev/gitlab/gdk /Users/jaime/dev/gitlab /Users/jaime/dev /Users/jaime /Users /]
INFO [config_reader] Used config file .golangci.yml
INFO [lintersdb] Active 23 linters: [bodyclose deadcode dogsled errorlint gci goconst gocyclo goimports gosec gosimple govet ineffassign misspell nolintlint revive staticcheck structcheck typecheck unconvert unparam unused varcheck whitespace]
INFO [loader] Go packages loading at mode 575 (deps|exports_file|name|types_sizes|compiled_files|files|imports) took 279.570458ms
WARN [runner] The linter 'deadcode' is deprecated (since v1.49.0) due to: The owner seems to have abandoned the linter. Replaced by unused.
WARN [runner] The linter 'structcheck' is deprecated (since v1.49.0) due to: The owner seems to have abandoned the linter. Replaced by unused.
WARN [runner] The linter 'varcheck' is deprecated (since v1.49.0) due to: The owner seems to have abandoned the linter. Replaced by unused.
INFO [runner/filename_unadjuster] Pre-built 0 adjustments in 4.658125ms
INFO [linters_context/goanalysis] analyzers took 0s with no stages
INFO [runner] Issues before processing: 347, after processing: 27
INFO [runner] Processors filtering stat (out/in): source_code: 27/27, sort_results: 27/27, path_prettifier: 347/347, skip_files: 344/347, identifier_marker: 344/344, max_per_file_from_linter: 27/28, path_prefixer: 27/27, cgo: 347/347, exclude: 344/344, diff: 28/28, max_from_linter: 27/27, path_shortener: 27/27, severity-rules: 27/27, fixer: 27/27, filename_unadjuster: 347/347, exclude-rules: 46/344, nolint: 28/46, max_same_issues: 27/27, skip_dirs: 344/344, autogenerated_exclude: 344/344, uniq_by_line: 28/28
INFO [runner] processing took 15.581423ms with stages: nolint: 3.696542ms, exclude-rules: 3.355459ms, path_prettifier: 2.989792ms, identifier_marker: 2.654125ms, autogenerated_exclude: 2.3615ms, source_code: 416.875µs, skip_files: 43.375µs, cgo: 34.418µs, max_per_file_from_linter: 14.501µs, filename_unadjuster: 9.167µs, path_shortener: 3.001µs, max_same_issues: 916ns, fixer: 376ns, skip_dirs: 291ns, severity-rules: 250ns, exclude: 209ns, max_from_linter: 167ns, diff: 125ns, uniq_by_line: 125ns, sort_results: 125ns, path_prefixer: 84ns
INFO [runner] linters took 80.5745ms with stages: goanalysis_metalinter: 64.926417ms
internal/vfs/serving/serving_test.go:25: File is not `gci`-ed with --skip-generated -s standard,default,prefix(gitlab.com/gitlab-org/gitlab-pages) (gci)
//nolint: gocyclo // this is vendored code
internal/vfs/serving/main_test.go:26: File is not `gci`-ed with --skip-generated -s standard,default,prefix(gitlab.com/gitlab-org/gitlab-pages) (gci)
//nolint: gocyclo // this is vendored code
internal/vfs/serving/main_test.go:26: File is not `goimports`-ed with -local gitlab.com/gitlab-org/gitlab-pages (goimports)
//nolint: gocyclo // this is vendored code
internal/vfs/serving/serving_test.go:25: File is not `goimports`-ed with -local gitlab.com/gitlab-org/gitlab-pages (goimports)
//nolint: gocyclo // this is vendored code
internal/vfs/local/root.go:48:22: unused-parameter: parameter 'ctx' seems to be unused, consider removing or renaming it as _ (revive)
func (r *Root) Lstat(ctx context.Context, name string) (os.FileInfo, error) {
^
internal/vfs/local/root.go:57:25: unused-parameter: parameter 'ctx' seems to be unused, consider removing or renaming it as _ (revive)
func (r *Root) Readlink(ctx context.Context, name string) (string, error) {
^
internal/vfs/local/root.go:83:21: unused-parameter: parameter 'ctx' seems to be unused, consider removing or renaming it as _ (revive)
func (r *Root) Open(ctx context.Context, name string) (vfs.File, error) {
^
internal/vfs/local/vfs.go:18:25: unused-parameter: parameter 'ctx' seems to be unused, consider removing or renaming it as _ (revive)
func (localFs VFS) Root(ctx context.Context, path string, cacheKey string) (vfs.Root, error) {
^
internal/vfs/local/vfs.go:18:59: unused-parameter: parameter 'cacheKey' seems to be unused, consider removing or renaming it as _ (revive)
func (localFs VFS) Root(ctx context.Context, path string, cacheKey string) (vfs.Root, error) {
^
internal/auth/auth.go:31: File is not `gci`-ed with --skip-generated -s standard,default,prefix(gitlab.com/gitlab-org/gitlab-pages) (gci)
//nolint: gosec // auth constants, not credentials
internal/auth/auth.go:201: File is not `gci`-ed with --skip-generated -s standard,default,prefix(gitlab.com/gitlab-org/gitlab-pages) (gci)
//nolint: gocyclo // TODO refactor this function https://gitlab.com/gitlab-org/gitlab-pages/-/issues/813
internal/auth/auth.go:31: File is not `goimports`-ed with -local gitlab.com/gitlab-org/gitlab-pages (goimports)
//nolint: gosec // auth constants, not credentials
internal/auth/auth_test.go:48:36: unused-parameter: parameter 'r' seems to be unused, consider removing or renaming it as _ (revive)
func (dm *domainMock) GetProjectID(r *http.Request) uint64 {
^
internal/auth/auth_test.go:52:70: unused-parameter: parameter 'r' seems to be unused, consider removing or renaming it as _ (revive)
func (dm *domainMock) ServeNotFoundAuthFailed(w http.ResponseWriter, r *http.Request) {
^
test/acceptance/helpers_test.go:453:33: unused-parameter: parameter 't' seems to be unused, consider removing or renaming it as _ (revive)
func GetRedirectPageWithHeaders(t *testing.T, spec ListenSpec, host, urlsuffix string, header http.Header) (*http.Response, error) {
^
app.go:186: File is not `gci`-ed with --skip-generated -s standard,default,prefix(gitlab.com/gitlab-org/gitlab-pages) (gci)
//nolint: gocyclo // ignore this
app.go:186: File is not `goimports`-ed with -local gitlab.com/gitlab-org/gitlab-pages (goimports)
//nolint: gocyclo // ignore this
app.go:309:13: G112: Potential Slowloris Attack because ReadHeaderTimeout is not configured in the http.Server (gosec)
server := &http.Server{}
^
app.go:323:13: G112: Potential Slowloris Attack because ReadHeaderTimeout is not configured in the http.Server (gosec)
server := &http.Server{}
^
internal/vfs/zip/archive.go:242:28: unused-parameter: parameter 'ctx' seems to be unused, consider removing or renaming it as _ (revive)
func (a *zipArchive) Lstat(ctx context.Context, name string) (os.FileInfo, error) {
^
internal/vfs/zip/archive.go:257:31: unused-parameter: parameter 'ctx' seems to be unused, consider removing or renaming it as _ (revive)
func (a *zipArchive) Readlink(ctx context.Context, name string) (string, error) {
^
internal/serving/disk/symlink/symlink.go:17: File is not `gci`-ed with --skip-generated -s standard,default,prefix(gitlab.com/gitlab-org/gitlab-pages) (gci)
//nolint: gocyclo // this is vendored code
internal/serving/disk/symlink/symlink.go:17: File is not `goimports`-ed with -local gitlab.com/gitlab-org/gitlab-pages (goimports)
//nolint: gocyclo // this is vendored code
internal/serving/disk/symlink/shims.go:10:20: unused-parameter: parameter 's' seems to be unused, consider removing or renaming it as _ (revive)
INFO File cache stats: 14 entries of total size 103.2KiB
func volumeNameLen(s string) int { return 0 }
^
internal/uniqueDomain/middleware.go:1:9: var-naming: don't use MixedCaps in package name; uniqueDomain should be uniquedomain (revive)
package uniqueDomain
^
internal/source/gitlab/cache/cache_test.go:25:32: unused-parameter: parameter 'ctx' seems to be unused, consider removing or renaming it as _ (revive)
func (c *clientMock) GetLookup(ctx context.Context, _ string) api.Lookup {
^
internal/source/gitlab/cache/entry_test.go:163:33: unused-parameter: parameter 'ctx' seems to be unused, consider removing or renaming it as _ (revive)
func (lm *lookupMock) GetLookup(ctx context.Context, domainName string) api.Lookup {
^
INFO Memory: 5 samples, avg is 37.5MB, max is 73.0MB
INFO Execution took 375.306ms
exit status 1
However, the CI job code_quality
returns no errors:
$ golangci-lint run ./... --out-format ${OUT_FORMAT} ${LINT_FLAGS} | tee ${REPORT_FILE}
[]
Sample jobs: