1
0
Fork 0
mirror of https://github.com/diamondburned/arikawa.git synced 2024-11-17 20:32:48 +00:00
arikawa/.gitlab-ci.yml

40 lines
884 B
YAML
Raw Normal View History

2020-01-16 04:43:42 +00:00
image: golang:alpine
variables:
GO111MODULE: "on"
2020-01-20 19:50:21 +00:00
CGO_ENABLED: "0"
2020-01-31 17:32:51 +00:00
COV: "/tmp/cov_results"
2020-01-16 04:43:42 +00:00
before_script:
- apk add git
stages:
- test
2020-04-20 18:03:15 +00:00
build_test:
stage: test
script:
- go build ./...
2020-01-16 04:43:42 +00:00
unit_test:
stage: test
script:
- go test -v -coverprofile $COV ./...
2020-01-31 17:32:51 +00:00
- go tool cover -func $COV
| grep -F 'total:'
| sed -E 's|total:\s+\(.*?\)\s+([0-9]+\.[0-9]+%)|TEST_COVERAGE=\1|'
2020-01-16 04:43:42 +00:00
integration_test:
stage: test
script:
# Don't run if these variables aren't provided.
- '[ ! "$BOT_TOKEN" ] && exit'
2020-01-20 19:37:39 +00:00
# go get first, so it doesn't count towards the timeout.
2020-01-20 19:50:21 +00:00
- go get ./...
2020-01-20 11:15:41 +00:00
# Timeout test after 120 seconds (2 minutes)
- timeout 120 go test -tags integration -v -coverprofile $COV ./...
- go tool cover -func $COV
| grep -F 'total:'
| sed -E 's|total:\s+\(.*?\)\s+([0-9]+\.[0-9]+%)|TEST_COVERAGE=\1|'
2020-01-16 04:43:42 +00:00