diff options
Diffstat (limited to 'tools/bootstrap-network.sh')
-rwxr-xr-x | tools/bootstrap-network.sh | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/tools/bootstrap-network.sh b/tools/bootstrap-network.sh new file mode 100755 index 0000000..cd18e3d --- /dev/null +++ b/tools/bootstrap-network.sh @@ -0,0 +1,40 @@ +#! /bin/sh +# +# 1. potentially stop running network +# 2. bootstrap a network from scratch as quickly as possible +# 3. tail -F all the tor log files +# +# NOTE: leaves debris around by renaming directory net/nodes +# and creating a new net/nodes +# +# Usage: +# cd YOUR-CHUTNEY-DIRECTORY +# tools/bootstrap-network.sh [network-flavour] +# network-flavour: one of the files in the networks directory, +# (default: 'basic') +# + +VOTING_OFFSET=6 +CHUTNEY=./chutney + +[ -x $CHUTNEY ] || { echo "$0: missing $CHUTNEY"; exit 1; } +[ -d networks ] || { echo "$0: missing directory: networks"; exit 1; } +[ -d net ] || { echo "$0: missing directory: net"; exit 1; } +flavour=basic; [ -n "$1" ] && { flavour=$1; shift; } + +$CHUTNEY stop networks/$flavour +[ -d net/nodes ] && mv net/nodes net/nodes.$(date +%s) +echo "$0: boostrapping network: $flavour" +$CHUTNEY configure networks/$flavour + +# TODO: Make 'chutney configure' take an optional offset argument and +# use the templating system in Chutney to set this instead of editing +# files like this. +offset=$(expr \( $(date +%s) + $VOTING_OFFSET \) % 300) +CONFOPT="TestingV3AuthVotingStartOffset" +for file in net/nodes/*a/torrc; do + sed -i.bak -e "s/^${CONFOPT}.*$/${CONFOPT} $offset/1" $file +done + +$CHUTNEY start networks/$flavour +tail -F net/nodes/*/notice.log |