52 lines
1.4 KiB
YAML
52 lines
1.4 KiB
YAML
language: go
|
|
cache:
|
|
directories:
|
|
- vendor/
|
|
- $GOCACHE
|
|
- $GOPATH/pkg/mod
|
|
- $GOPATH/src/github.com/btcsuite
|
|
- $GOPATH/src/github.com/golang
|
|
- $GOPATH/src/gopkg.in/alecthomas
|
|
|
|
go:
|
|
- "1.11.x"
|
|
|
|
env:
|
|
global:
|
|
- GOCACHE=$HOME/.go-build
|
|
matrix:
|
|
- RACE=true LINT=true
|
|
- ITEST=true
|
|
- COVER=true
|
|
|
|
sudo: required
|
|
install:
|
|
- sudo add-apt-repository -y ppa:bitcoin/bitcoin -y
|
|
- sudo apt-get update -q
|
|
- sudo apt-get install bitcoind -y
|
|
- export PATH=$PATH:$PWD/linux-amd64/
|
|
|
|
script:
|
|
- env GO111MODULE=on
|
|
|
|
# Common for all builds.
|
|
- make btcd
|
|
|
|
# Run linter if LINT=true.
|
|
- 'if [ "$LINT" = true ]; then make lint ; fi'
|
|
|
|
# Run unit tests with race condition detector.
|
|
- 'if [ "$RACE" = true ]; then make unit-race ; fi'
|
|
|
|
# Run integration tests.
|
|
- 'if [ "$ITEST" = true ]; then make build ; fi'
|
|
- 'if [ "$ITEST" = true ]; then make itest-only ; fi'
|
|
|
|
# Run unit tests and generate coverage report.
|
|
- 'if [ "$COVER" = true ]; then make unit-cover; fi'
|
|
- 'if [ "$COVER" = true ]; then make goveralls; fi'
|
|
|
|
after_script:
|
|
- echo "Uploading to termbin.com..." && find *.log | xargs -I{} sh -c "cat {} | nc termbin.com 9999 | xargs -r0 printf '{} uploaded to %s'"
|
|
- echo "Uploading to file.io..." && tar -zcvO *.log | curl -s -F 'file=@-;filename=logs.tar.gz' https://file.io | xargs -r0 printf 'logs.tar.gz uploaded to %s\n'
|