#!/bin/bash set -x # Generate a random string of $1 characters function random { cat /dev/urandom | tr -cd 'a-f0-9' | head -c $1 } # Compute test paths BASE_PATH=`pwd`/test_docker_$(random 12) DOCKER_PATH=$BASE_PATH/go/src/github.com/dotcloud/docker export GOPATH=$BASE_PATH/go:$DOCKER_PATH/vendor # Fetch latest master mkdir -p $DOCKER_PATH cd $DOCKER_PATH git init . git fetch -q http://github.com/dotcloud/docker master git reset --hard FETCH_HEAD # Fetch go coverage cd $BASE_PATH/go GOPATH=$BASE_PATH/go go get github.com/axw/gocov/gocov sudo -E GOPATH=$GOPATH ./bin/gocov test -deps -exclude-goroot -v\ -exclude github.com/gorilla/context,github.com/gorilla/mux,github.com/kr/pty,\ code.google.com/p/go.net/websocket,github.com/dotcloud/tar\ github.com/dotcloud/docker | ./bin/gocov report; exit_status=$? # Cleanup testing directory rm -rf $BASE_PATH exit $exit_status