github.com/unicornultrafoundation/go-u2u@v1.0.0-rc1.0.20240205080301-e74a83d3fadc/demo/start.sh (about) 1 #!/usr/bin/env bash 2 cd $(dirname $0) 3 . ./_params.sh 4 5 set -e 6 7 echo -e "\nStart $N nodes:\n" 8 9 go build -o ../build/demo_u2u ../cmd/u2u 10 11 rm -f ./transactions.rlp 12 for ((i=0;i<$N;i+=1)) 13 do 14 DATADIR="${PWD}/u2u$i.datadir" 15 mkdir -p ${DATADIR} 16 17 PORT=$(($PORT_BASE+$i)) 18 RPCP=$(($RPCP_BASE+$i)) 19 WSP=$(($WSP_BASE+$i)) 20 ACC=$(($i+1)) 21 PPROFP=$(($PPROFP_BASE+$i)) 22 PROMETHEUSP=$(($PROMETHEUSP_BASE+$i)) 23 24 (../build/demo_u2u \ 25 --datadir=${DATADIR} \ 26 --fakenet=${ACC}/$N \ 27 --port=${PORT} \ 28 --nat extip:127.0.0.1 \ 29 --http --http.addr="127.0.0.1" --http.port=${RPCP} --http.corsdomain="*" --http.api="eth,debug,net,admin,web3,personal,txpool,dag" \ 30 --ws --ws.addr="127.0.0.1" --ws.port=${WSP} --ws.origins="*" --ws.api="eth,debug,net,admin,web3,personal,txpool,dag" \ 31 --pprof --pprof.addr="127.0.0.1" --pprof.port=${PPROFP} \ 32 --verbosity=3 --tracing --monitor --monitor.prometheus.port=${PROMETHEUSP} >> u2u$i.log 2>&1)& 33 34 echo -e "\tnode$i ok" 35 done 36 37 echo -e "\nConnect nodes to ring:\n" 38 for ((i=0;i<$N;i+=1)) 39 do 40 for ((n=0;n<$M;n+=1)) 41 do 42 j=$(((i+n+1) % N)) 43 44 enode=$(attach_and_exec $j 'admin.nodeInfo.enode') 45 echo " p2p address = ${enode}" 46 47 echo " connecting node-$i to node-$j:" 48 res=$(attach_and_exec $i "admin.addPeer(${enode})") 49 echo " result = ${res}" 50 done 51 done