#!/bin/sh DEST=$1 set -e # Run Docker's test suite, including sub-packages, and store their output as a bundle bundle_test() { { date for test_dir in $(find_test_dirs); do ( set -x cd $test_dir DEBUG=1 go test -v -ldflags "$LDFLAGS" $BUILDFLAGS ) done } 2>&1 | tee $DEST/test.log } # This helper function walks the current directory looking for directories # holding Go test files, and prints their paths on standard output, one per # line. find_test_dirs() { find . -name '*_test.go' | grep -v '^./vendor' | { while read f; do dirname $f; done; } | sort -u } bundle_test