Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-pages.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaime Martinez <jmartinez@gitlab.com>2020-05-21 03:52:19 +0300
committerJaime Martinez <jmartinez@gitlab.com>2020-05-28 04:10:14 +0300
commitf6dfa5d0043aeaa616c16f8babb64c0d0e8f72dd (patch)
treef8cbab7f2c4a30c07f827a50d7877c388e18616f /.gitlab-ci.yml
parent559311801a1e9114f8dee71faa388dcefab3dcbe (diff)
Add .golangci.yml linter configuration
As part of https://gitlab.com/gitlab-org/gitlab-pages/-/issues/385 we have introduced the use of a custom `.golangci.yml` file with some custom rules for linting. This replaces the need of downloading and using `golint`, `gofmt` `go vet` and `gocyclo` manually. We take advantage of the custom `golangci-lint` docker image as stated in the [Automatic lintinb] (https://docs.gitlab.com/ee/development/go_guide/#automatic-linting) section of the Go standards and style guidelines. This iteration enables a subset of linters, with the remaining of them enabled on a separate MR as described in the issue above. The main changes introduced by this linter include: - gosec: potential hardcoded credentials - goconst: DRY by declaring and using constants - gosimple: reduce statements complexity and improve return statements
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml26
1 files changed, 20 insertions, 6 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d640f08b..01732f45 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -86,19 +86,33 @@ download deps:
- go.mod
- go.sum
-verify:
- extends: .go-mod-cache
+cover:
stage: test
+ extends: .go-mod-cache
needs: ['download deps']
script:
- - make setup
- - make generate-mocks
- - make verify
- - make cover
+ - make setup
+ - make generate-mocks
+ - make cover
artifacts:
paths:
- coverage.html
+lint:
+ extends: .go-mod-cache
+ needs: ['download deps']
+ stage: test
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:golangci-lint-alpine
+ script:
+ # Write the code coverage report to gl-code-quality-report.json
+ # and print linting issues to stdout in the format: path/to/file:line description
+ - golangci-lint run --out-format code-climate | tee gl-code-quality-report.json | jq -r '.[] | "\(.location.path):\(.location.lines.begin) \(.description)"'
+ artifacts:
+ reports:
+ codequality: gl-code-quality-report.json
+ paths:
+ - gl-code-quality-report.json
+
test:1.12:
extends: .tests
image: golang:1.12