12345678910111213141516171819202122232425262728293031323334353637 |
- #!/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
|