@@ -16,13 +16,19 @@ ${BB} rm -rf data/deployments
1616# has geth as dependency
1717$DC up deploy-contracts
1818
19+ # setup chain-seed
1920$DC run --rm --no-deps chain-seed init \
2021 --root /chain \
2122 --blocktime 1 \
2223 --listen-address tcp://0.0.0.0:${TM_RPC_PORT} \
2324 --role seed
2425
25- for num in 0 1 2 3; do
26+ seed_node=$( cat data/chain-seed/config/node_key.json.id) @chain-seed:${TM_P2P_PORT}
27+
28+ ${BB} sed -i " /^moniker/c\moniker = \" chain-seed\" " data/chain-seed/config/config.toml
29+
30+ # configure validators and keypers 0-3
31+ for num in {0..3}; do
2632 validator_cmd=chain-$num -validator
2733
2834 $DC run --rm --no-deps ${validator_cmd} init \
@@ -32,31 +38,26 @@ for num in 0 1 2 3; do
3238 --listen-address tcp://0.0.0.0:${TM_RPC_PORT} \
3339 --role validator
3440
35- ${BB} sed -i " /ValidatorPublicKey/c\ValidatorPublicKey = \" $( cat data/${validator_cmd} /config/priv_validator_pubkey.hex) \" " /config/keyper-${num} .toml
41+ validator_id=$( cat data/${validator_cmd} /config/node_key.json.id)
42+ validator_node=${validator_id} @${validator_cmd} :${TM_P2P_PORT}
43+ validator_config_path=data/${validator_cmd} /config/config.toml
3644
45+ # share genesis
3746 if [ $num -eq 0 ]; then
38- for destination in data/chain-seed/config/ data/chain-{1..3}-validator/config/ ; do
47+ for destination in data/chain-seed/config/ data/chain-{1..3}-validator/config/; do
3948 ${BB} cp -v data/chain-0-validator/config/genesis.json " ${destination} "
4049 done
4150 fi
42- done
4351
44- seed_node=$( cat data/chain-seed/config/node_key.json.id) @chain-seed:${TM_P2P_PORT}
45- validator_0_node=$( cat data/chain-0-validator/config/node_key.json.id) @chain-0-validator:${TM_P2P_PORT}
46-
47- ${BB} sed -i " /^moniker/c\moniker = \" chain-seed\" " data/chain-seed/config/config.toml
48-
49- for num in {0..3}; do
50- validator_cmd=chain-$num -validator
51-
52- validator_id=$( cat data/${validator_cmd} /config/node_key.json.id)
53- validator_node=${validator_id} @${validator_cmd} :${TM_P2P_PORT}
52+ # set validator publickey for keyper
53+ ${BB} sed -i " /ValidatorPublicKey/c\ValidatorPublicKey = \" $( cat data/${validator_cmd} /config/priv_validator_pubkey.hex) \" " /config/keyper-${num} .toml
5454
55- # set seed node for validator
56- ${BB} sed -i " /^bootstrap_peers =/c\bootstrap_peers = \" ${validator_0_node} \" " data/${validator_cmd} /config/config.toml
57- ${BB} sed -i " /^external_address =/c\external_address = \" ${validator_cmd} :${TM_P2P_PORT} \" " data/${validator_cmd} /config/config.toml
58- ${BB} sed -i " /^pex/c\pex = true" data/${validator_cmd} /config/config.toml
59- ${BB} sed -i " /^moniker/c\moniker = \" ${validator_cmd} \" " data/${validator_cmd} /config/config.toml
55+ # set seed node for chain bootstrap
56+ ${BB} sed -i " /^bootstrap_peers =/c\bootstrap_peers = \" ${seed_node} \" " " ${validator_config_path} "
57+ # fix external address for docker internal communication
58+ ${BB} sed -i " /^external_address =/c\external_address = \" ${validator_cmd} :${TM_P2P_PORT} \" " " ${validator_config_path} "
59+ # give a nice name
60+ ${BB} sed -i " /^moniker/c\moniker = \" ${validator_cmd} \" " " ${validator_config_path} "
6061
6162done
6263
0 commit comments