Skip to content

Commit

Permalink
Script for starting multiple cjdns nodes
Browse files Browse the repository at this point in the history
  • Loading branch information
Randati committed Jun 5, 2014
1 parent 6f18860 commit ecfccaf
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -3,3 +3,4 @@
graph.json
web_config.cfg
lighttp.conf
mapper-confs/
53 changes: 53 additions & 0 deletions scripts/startMultipleCjdns.sh
@@ -0,0 +1,53 @@
#!/bin/bash

###############################################################################
# CONFIG

cjdns_path="/home/user/cjdns"
num_of_nodes=5

# Where nodes connect to
peer_ip="127.0.0.1"
peer_port="55555"
peer_pw="mapper-hunter2"
peer_pk="foobarbaz9876543211337asdf.k"

# RPC settings for nodes
rpc_bind="127.0.0.1"
rpc_pw="hunter2"
rpc_firstport=11234

###############################################################################



mkdir -p mapper-confs

for i in $(seq 1 $num_of_nodes)
do
echo "Starting mapper node $i/$num_of_nodes"

file=mapper-confs/node$i.conf
rpcport=$(($rpc_firstport + $i - 1))

$cjdns_path/cjdroute --genconf > $file

# Set peer credentials
sed -i 's/\/\/ Add connection credentials here to join the network/"'"${peer_ip}"':'"${peer_port}"'":{"password":"'"${peer_pw}"'","publicKey":"'"${peer_pk}"'"}/g' $file

# Set admin rpc credentials
sed -i 's/127.0.0.1:11234/'"${rpc_bind}"':'"${rpcport}"'/g' $file
sed -i 's/"password": ".*"/"password": "'"${rpc_pw}"'"/g' $file

# Disable tun interface
sed -i 's/"type": "TUNInterface"/\/\/"type": "TUNInterface"/g' $file

if [[ $* == *-d* ]]; then
# Log to stdout
sed -i 's/\/\/ "logTo":"stdout"/"logTo":"stdout"/g' $file

gdb $cjdns_path/cjdroute -ex 'set follow-fork-mode child' -ex 'run < '"${file}" -ex 'thread apply all bt' -ex 'quit' > gdb-$i.log 2>&1 &
else
$cjdns_path/cjdroute < $file
fi
done

0 comments on commit ecfccaf

Please sign in to comment.