forked from TrueCloudLab/distribution
19ec4e2c7a
Integrate flags better with the development flow a Docker developer. Add a shell function to make invocation of tests easy. Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
36 lines
977 B
Bash
Executable file
36 lines
977 B
Bash
Executable file
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
|
|
|
|
# Root directory of Distribution
|
|
DISTRIBUTION_ROOT=$(cd ../..; pwd -P)
|
|
|
|
volumeMount=""
|
|
if [ "$DOCKER_VOLUME" != "" ]; then
|
|
volumeMount="-v ${DOCKER_VOLUME}:/var/lib/docker"
|
|
fi
|
|
|
|
dockerMount=""
|
|
if [ "$DOCKER_BINARY" != "" ]; then
|
|
dockerMount="-v ${DOCKER_BINARY}:/usr/local/bin/docker"
|
|
fi
|
|
|
|
# Image containing the integration tests environment.
|
|
INTEGRATION_IMAGE=${INTEGRATION_IMAGE:-distribution/docker-integration}
|
|
|
|
# Make sure we upgrade the integration environment.
|
|
docker pull $INTEGRATION_IMAGE
|
|
|
|
# Start the integration tests in a Docker container.
|
|
ID=$(docker run -d -t --privileged $volumeMount $dockerMount \
|
|
-v ${DISTRIBUTION_ROOT}:/go/src/github.com/docker/distribution \
|
|
-e "STORAGE_DRIVER=$DOCKER_GRAPHDRIVER" \
|
|
-e "EXEC_DRIVER=$EXEC_DRIVER" \
|
|
${INTEGRATION_IMAGE} \
|
|
./test_runner.sh "$@")
|
|
|
|
# Clean it up when we exit.
|
|
trap "docker rm -f -v $ID > /dev/null" EXIT
|
|
|
|
docker logs -f $ID
|