tendermint/test/test_libs.sh
Alexander Simmerl b7ce89e568
Speed up CircleCI builds
To achieve faster feedback cycles for our feature PRs this change
reduces the average buildtime from 35 to ~6min by utilising their new
2.0 offering based on docker and nomad. We make use of parallel build
steps wherever possible so that the duration is determined by the
slowest test suite (p2p).

This is an intermediate step until we move our CI/CD completely
on-premise for more control and added security.
2018-03-06 17:36:44 +01:00

35 lines
728 B
Bash

#! /bin/bash
set -ex
export PATH="$GOBIN:$PATH"
# Get the parent directory of where this script is.
SOURCE="${BASH_SOURCE[0]}"
while [ -h "$SOURCE" ] ; do SOURCE="$(readlink "$SOURCE")"; done
DIR="$( cd -P "$( dirname "$SOURCE" )/.." && pwd )"
####################
# libs we depend on
####################
# All libs should define `make test` and `make get_vendor_deps`
LIBS=(tmlibs go-wire go-crypto abci)
for lib in "${LIBS[@]}"; do
# checkout vendored version of lib
bash scripts/dep_utils/checkout.sh "$lib"
echo "Testing $lib ..."
cd "$GOPATH/src/github.com/tendermint/$lib"
make get_tools
make get_vendor_deps
make test
if [[ "$?" != 0 ]]; then
echo "FAIL"
exit 1
fi
cd "$DIR"
done
echo ""
echo "PASS"