Fix integration suite and propagate failures

Failures from the integration suite were not propagating to the outter shell
for some reason. Handle the failure with an if exit 1.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
This commit is contained in:
Daniel Nephin 2017-08-30 12:01:01 -04:00
parent cb952bf006
commit 96707bc600
4 changed files with 18 additions and 6 deletions

View File

@ -35,6 +35,7 @@ DOCKER_ENVS := \
-e DOCKER_REMAP_ROOT \
-e DOCKER_STORAGE_OPTS \
-e DOCKER_USERLANDPROXY \
-e TEST_INTEGRATION_DIR \
-e TESTDIRS \
-e TESTFLAGS \
-e TIMEOUT \

View File

@ -8,22 +8,32 @@
source "$SCRIPTDIR/make/.go-autogen"
# Set defaults
: ${TEST_REPEAT:=1}
: ${TESTFLAGS:=}
: ${TESTDEBUG:=}
integration_api_dirs=("$(
integration_api_dirs=${TEST_INTEGRATION_DIR:-"$(
find ./integration -type d |
grep -vE '^(./integration$|./integration/util)')")
grep -vE '^(./integration$|./integration/util)')"}
run_test_integration() {
[[ "$TESTFLAGS" != *-check.f* ]] && run_test_integration_suites
run_test_integration_legacy_suites
}
run_test_integration_suites() {
local flags="-test.v -test.timeout=${TIMEOUT} $TESTFLAGS"
for dir in $integration_api_dirs; do
(
if ! (
cd $dir
echo "Running $PWD"
test_env ./test.main $flags
)
); then exit 1; fi
done
}
run_test_integration_legacy_suites() {
(
flags="-check.v -check.timeout=${TIMEOUT} -test.timeout=360m $TESTFLAGS"
cd integration-cli
@ -33,7 +43,7 @@ run_test_integration() {
}
build_test_suite_binaries() {
if [ $DOCKER_INTEGRATION_TESTS_VERIFIED ]; then
if [ ${DOCKER_INTEGRATION_TESTS_VERIFIED-} ]; then
echo "Skipping building test binaries; as DOCKER_INTEGRATION_TESTS_VERIFIED is set"
return
fi

View File

@ -1,5 +1,5 @@
#!/usr/bin/env bash
set -e
set -e -o pipefail
source "${MAKEDIR}/.go-autogen"
source hack/make/.integration-test-helpers

View File

@ -18,6 +18,7 @@ import (
)
func TestInspect(t *testing.T) {
defer setupTest(t)()
d := newSwarm(t)
defer d.Stop(t)
client, err := request.NewClientForHost(d.Sock())