1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00

Set TIMEOUT according to os/arch.

Signed-off-by: Michael Zhao <michael.zhao@arm.com>
This commit is contained in:
Michael Zhao 2019-07-17 13:05:35 +08:00
parent 2cdaceb2a0
commit 790da6c223
4 changed files with 37 additions and 22 deletions

View file

@ -150,15 +150,6 @@ ORIG_BUILDFLAGS=( -tags "autogen netgo osusergo static_build $DOCKER_BUILDTAGS"
BUILDFLAGS=( ${BUILDFLAGS} "${ORIG_BUILDFLAGS[@]}" ) BUILDFLAGS=( ${BUILDFLAGS} "${ORIG_BUILDFLAGS[@]}" )
# Test timeout.
if [ "${DOCKER_ENGINE_GOARCH}" == "arm64" ] || [ "${DOCKER_ENGINE_GOARCH}" == "arm" ]; then
: ${TIMEOUT:=10m}
elif [ "${DOCKER_ENGINE_GOARCH}" == "windows" ]; then
: ${TIMEOUT:=8m}
else
: ${TIMEOUT:=5m}
fi
LDFLAGS_STATIC_DOCKER=" LDFLAGS_STATIC_DOCKER="
$LDFLAGS_STATIC $LDFLAGS_STATIC
-extldflags \"$EXTLDFLAGS_STATIC\" -extldflags \"$EXTLDFLAGS_STATIC\"

View file

@ -20,6 +20,7 @@ integration_api_dirs=${TEST_INTEGRATION_DIR:-"$(
grep -vE '(^./integration($|/internal)|/testdata)')"} grep -vE '(^./integration($|/internal)|/testdata)')"}
run_test_integration() { run_test_integration() {
set_platform_timeout
if [[ "$TESTFLAGS" != *-check.f* ]]; then if [[ "$TESTFLAGS" != *-check.f* ]]; then
run_test_integration_suites run_test_integration_suites
fi fi
@ -108,10 +109,9 @@ test_env() {
"$@" "$@"
) )
} }
error_on_leaked_containerd_shims() { error_on_leaked_containerd_shims() {
if [ "$(go env GOOS)" == 'windows' ]; then if [ "$(go env GOOS)" = 'windows' ]; then
return return
fi fi
@ -124,3 +124,23 @@ error_on_leaked_containerd_shims() {
exit 1 exit 1
fi fi
} }
set_platform_timeout() {
# Test timeout.
if [ "${DOCKER_ENGINE_GOARCH}" = "arm64" ] || [ "${DOCKER_ENGINE_GOARCH}" = "arm" ]; then
: ${TIMEOUT:=10m}
elif [ "${DOCKER_ENGINE_GOARCH}" = "windows" ]; then
: ${TIMEOUT:=8m}
else
: ${TIMEOUT:=5m}
fi
if [ "${TEST_REPEAT}" -gt 1 ]; then
# TIMEOUT needs to take TEST_REPEAT into account, or a premature time out may happen.
# The following ugliness will:
# - remove last character (usually 'm' from '10m')
# - multiply by testcount
# - add last character back
TIMEOUT=$((${TIMEOUT::-1} * ${TEST_REPEAT}))${TIMEOUT:$((${#TIMEOUT}-1)):1}
fi
}

View file

@ -20,18 +20,10 @@ echo "Running stress test for them."
( (
TESTARRAY=$(echo "$new_tests" | sed 's/+func //' | awk -F'\\(' '{print $1}' | tr '\n' '|') TESTARRAY=$(echo "$new_tests" | sed 's/+func //' | awk -F'\\(' '{print $1}' | tr '\n' '|')
# Note: TEST_REPEAT will make the test suite run 5 times, restarting the daemon # Note: TEST_REPEAT will make the test suite run 5 times, restarting the daemon
# whereas testcount will make each test run 5 times in a row under the same daemon. # and each test will run 5 times in a row under the same daemon.
# This will make a total of 25 runs for each test in TESTARRAY. # This will make a total of 25 runs for each test in TESTARRAY.
export TEST_REPEAT=5 export TEST_REPEAT=5
local testcount=5 export TESTFLAGS="-test.count ${TEST_REPEAT} -test.run ${TESTARRAY%?}"
# However, TIMEOUT needs to take testcount into account, or a premature time out may happen.
# The following ugliness will:
# - remove last character (usually 'm' from '10m')
# - multiply by testcount
# - add last character back
export TIMEOUT=$((${TIMEOUT::-1} * $testcount))${TIMEOUT:$((${#TIMEOUT}-1)):1}
export TESTFLAGS="-test.count $testcount -test.run ${TESTARRAY%?}"
echo "Using test flags: $TESTFLAGS" echo "Using test flags: $TESTFLAGS"
source hack/make/test-integration source hack/make/test-integration
) )

View file

@ -2,7 +2,7 @@
set -e -u -o pipefail set -e -u -o pipefail
ARCH=$(uname -m) ARCH=$(uname -m)
if [ "$ARCH" == "x86_64" ]; then if [ "$ARCH" = "x86_64" ]; then
ARCH="amd64" ARCH="amd64"
fi fi
@ -17,6 +17,7 @@ integration_api_dirs=${TEST_INTEGRATION_DIR:-"$(
grep -vE '(^/tests/integration($|/internal)|/testdata)')"} grep -vE '(^/tests/integration($|/internal)|/testdata)')"}
run_test_integration() { run_test_integration() {
set_platform_timeout
if [[ "$TESTFLAGS" != *-check.f* ]]; then if [[ "$TESTFLAGS" != *-check.f* ]]; then
run_test_integration_suites run_test_integration_suites
fi fi
@ -72,5 +73,16 @@ test_env() {
) )
} }
set_platform_timeout() {
# Test timeout.
if [ "${DOCKER_ENGINE_GOARCH}" = "arm64" ] || [ "${DOCKER_ENGINE_GOARCH}" = "arm" ]; then
: ${TIMEOUT:=10m}
elif [ "${DOCKER_ENGINE_GOARCH}" = "windows" ]; then
: ${TIMEOUT:=8m}
else
: ${TIMEOUT:=5m}
fi
}
sh /scripts/ensure-emptyfs.sh sh /scripts/ensure-emptyfs.sh
run_test_integration run_test_integration