Files
weave-scope/integration/setup.sh
2017-05-19 14:49:38 +02:00

38 lines
971 B
Bash
Executable File

#!/bin/bash
set -e # NB don't set -u, as weave's config.sh doesn't like that.
# shellcheck disable=SC1091
. ./config.sh
echo Copying scope images and scripts to hosts
# shellcheck disable=SC2153
for HOST in $HOSTS; do
SIZE=$(stat --printf="%s" ../scope.tar)
pv -N "scope.tar" -s "$SIZE" ../scope.tar | $SSH -C "$HOST" sudo docker load
done
setup_host() {
local HOST=$1
echo Installing weave on "$HOST"
# Download the latest released weave script locally,
# for use by weave_on
curl -sL git.io/weave -o ./weave
chmod a+x ./weave
run_on "$HOST" "sudo curl -sL git.io/weave -o /usr/local/bin/weave"
run_on "$HOST" "sudo chmod a+x /usr/local/bin/weave"
weave_on "$HOST" setup
echo Prefetching Images on "$HOST"
docker_on "$HOST" pull peterbourgon/tns-db
docker_on "$HOST" pull alpine
docker_on "$HOST" pull busybox
docker_on "$HOST" pull nginx
}
for HOST in $HOSTS; do
setup_host "$HOST" &
done
wait