diff --git a/tests/setup_docker.sh b/tests/setup_docker.sh new file mode 100755 index 0000000000..ba84a35e79 --- /dev/null +++ b/tests/setup_docker.sh @@ -0,0 +1,47 @@ +#!/bin/bash +# +# This script is used to setup Kolla Docker environment, +# after running this script, you can run Kolla functional test. +# NOTE: This script was only tested on redhat/debian/suse platform families. +# + +set -xeu + +DOCKER_MIN_VERSION=1.6.0 + +function check_platform() { + if [ "$OSTYPE" != "linux-gnu" ]; then + echo Platform not supported + exit 255 + fi +} + +function check_docker_version() { + local docker_version + local result + if which docker &>/dev/null; then + docker_version=$(docker --version 2>/dev/null | awk -F"[ ,]" '{print $3}') + result=$(awk 'BEGIN{print '$docker_version' >= '$DOCKER_MIN_VERSION'}') + if [ $result = 1 ]; then + return 0 + fi + fi + return 1 +} + +function start_docker() { + pkill -9 docker || true + if check_docker_version; then + docker -d &>/dev/null & + else + curl -sSL https://get.docker.com/builds/Linux/x86_64/docker-$DOCKER_MIN_VERSION -o /usr/local/bin/docker + chmod +x /usr/local/bin/docker + /usr/local/bin/docker -d &>/dev/null & + fi +} + +## Check platfrom +check_platfrom + +## Start Docker service +start_docker