1
0
Fork 0
telegram/.gitlab-ci.yml

50 lines
957 B
YAML

---
image: golang:alpine
variables:
REPO_NAME: gitlab.com/$CI_PROJECT_PATH
CGO_ENABLED: "0"
cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- /go/pkg/mod
- /var/cache/apk
before_script:
- mkdir -p $GOPATH/src/$(dirname $REPO_NAME)
- ln -svf $CI_PROJECT_DIR $GOPATH/src/$REPO_NAME
- cd $GOPATH/src/$REPO_NAME
stages:
- test
test:
stage: test
before_script:
- go get gotest.tools/gotestsum
script:
- gotestsum --junitfile report.xml --format testname
artifacts:
when: always
reports:
junit: report.xml
cover:
stage: test
before_script:
- go get github.com/t-yuki/gocover-cobertura
script:
- go test -coverprofile=coverage.txt -covermode count $REPO_NAME/...
- gocover-cobertura < coverage.txt > coverage.xml
artifacts:
reports:
cobertura: coverage.xml
lint:
image: golangci/golangci-lint
stage: test
script:
- golangci-lint run $REPO_NAME/...
allow_failure: true