ci: run go race tests in parallel over 8 containers (#16288)

* ci: run go race tests in parallel over 8 containers

Signed-off-by: Chris Goller <goller@gmail.com>

* ci: add timing hint for splitting go tests

Signed-off-by: Chris Goller <goller@gmail.com>

* ci: remove spurious grep

Signed-off-by: Chris Goller <goller@gmail.com>

* ci: mod=readonly should ignore unknown internal/promqltests path

Signed-off-by: Chris Goller <goller@gmail.com>

* ci: echo the packages tested

Signed-off-by: Chris Goller <goller@gmail.com>

* ci: remove readonly experiment

Signed-off-by: Chris Goller <goller@gmail.com>

* ci: filter promql internal tests

The promql internal tests has a special go.mod that shows
up in go list.  That directory cannot be tested.

Signed-off-by: Chris Goller <goller@gmail.com>
pull/16176/head
Chris Goller 2019-12-18 23:47:26 -06:00 committed by GitHub
parent a8a4d3d0b2
commit 4755e50af8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 1 deletions

View File

@ -208,6 +208,7 @@ jobs:
GOFLAGS: "-mod=readonly -p=2" # Go on Circle thinks 32 CPUs are available, but there aren't.
TEST_RESULTS: /tmp/test-results
working_directory: /go/src/github.com/influxdata/influxdb
parallelism: 8
steps:
- checkout
@ -227,7 +228,14 @@ jobs:
- install_rust_compiler
- run: mkdir -p $TEST_RESULTS
- run: make test-go # This uses the test cache so it may succeed or fail quickly.
- run: GOTRACEBACK=all GO111MODULE=on FLUX_PARSER_TYPE=rust CGO_LDFLAGS="$(cat .cgo_ldflags)" gotestsum --format standard-quiet --junitfile /tmp/test-results/gotestsum.xml -- -race -count=1 -tags 'libflux' ./...
- run:
name: parallel go race tests
command: |
set +e
# filter internal/promqltests because it has special go.mod
TESTFILES=$(go list ./... | grep -v internal/promqltests | circleci tests split --split-by=timings)
echo $TESTFILES
GOTRACEBACK=all GO111MODULE=on FLUX_PARSER_TYPE=rust CGO_LDFLAGS="$(cat .cgo_ldflags)" gotestsum --format standard-quiet --junitfile /tmp/test-results/gotestsum.xml -- -race -count=1 -tags 'libflux' $TESTFILES
- save_cache:
name: Saving GOCACHE
key: influxdb-gocache-{{ .Branch }}-{{ .Revision }}