2020-09-01 21:16:28 +00:00
#!/bin/bash
2021-08-17 14:11:26 +00:00
CHAINID = "ethermint_9000-1"
2020-09-01 21:16:28 +00:00
MONIKER = "localtestnet"
2021-04-17 10:00:07 +00:00
# localKey address 0x7cb61d4117ae31a12e393a1cfa3bac666481d02e
2020-09-01 21:16:28 +00:00
VAL_KEY = "localkey"
VAL_MNEMONIC = "gesture inject test cycle original hollow east ridge hen combine junk child bacon zero hope comfort vacuum milk pitch cage oppose unhappy lunar seat"
2021-04-17 10:00:07 +00:00
# user1 address 0xc6fe5d33615a1c52c08018c47e8bc53646a0e101
2020-09-01 21:16:28 +00:00
USER1_KEY = "user1"
USER1_MNEMONIC = "copper push brief egg scan entry inform record adjust fossil boss egg comic alien upon aspect dry avoid interest fury window hint race symptom"
2021-04-17 10:00:07 +00:00
# user2 address 0x963ebdf2e1f8db8707d05fc75bfeffba1b5bac17
2020-09-01 21:16:28 +00:00
USER2_KEY = "user2"
USER2_MNEMONIC = "maximum display century economy unlock van census kite error heart snow filter midnight usage egg venture cash kick motor survey drastic edge muffin visual"
2021-10-21 11:06:20 +00:00
# user3 address 0x40a0cb1C63e026A81B55EE1308586E21eec1eFa9
USER3_KEY = "user3"
USER3_MNEMONIC = "will wear settle write dance topic tape sea glory hotel oppose rebel client problem era video gossip glide during yard balance cancel file rose"
# user4 address 0x498B5AeC5D439b733dC2F58AB489783A23FB26dA
USER4_KEY = "user4"
USER4_MNEMONIC = "doll midnight silk carpet brush boring pluck office gown inquiry duck chief aim exit gain never tennis crime fragile ship cloud surface exotic patch"
2020-09-01 21:16:28 +00:00
# remove existing daemon and client
2022-09-07 07:26:51 +00:00
rm -rf ~/.laconic*
2020-09-01 21:16:28 +00:00
# Import keys from mnemonics
2022-09-07 07:26:51 +00:00
echo $VAL_MNEMONIC | laconicd keys add $VAL_KEY --recover --keyring-backend test --algo "eth_secp256k1"
echo $USER1_MNEMONIC | laconicd keys add $USER1_KEY --recover --keyring-backend test --algo "eth_secp256k1"
echo $USER2_MNEMONIC | laconicd keys add $USER2_KEY --recover --keyring-backend test --algo "eth_secp256k1"
echo $USER3_MNEMONIC | laconicd keys add $USER3_KEY --recover --keyring-backend test --algo "eth_secp256k1"
echo $USER4_MNEMONIC | laconicd keys add $USER4_KEY --recover --keyring-backend test --algo "eth_secp256k1"
2020-09-01 21:16:28 +00:00
2022-09-07 07:26:51 +00:00
laconicd init $MONIKER --chain-id $CHAINID
2020-09-01 21:16:28 +00:00
2021-07-19 01:52:44 +00:00
# Set gas limit in genesis
2022-09-07 07:26:51 +00:00
cat $HOME /.laconicd/config/genesis.json | jq '.consensus_params["block"]["max_gas"]="10000000"' > $HOME /.laconicd/config/tmp_genesis.json && mv $HOME /.laconicd/config/tmp_genesis.json $HOME /.laconicd/config/genesis.json
2021-07-19 01:52:44 +00:00
2021-10-21 11:06:20 +00:00
# Reduce the block time to 1s
2022-09-07 07:26:51 +00:00
sed -i -e '/^timeout_commit =/ s/= .*/= "850ms"/' $HOME /.laconicd/config/config.toml
2021-10-21 11:06:20 +00:00
2020-09-01 21:16:28 +00:00
# Allocate genesis accounts (cosmos formatted addresses)
2022-09-07 07:26:51 +00:00
laconicd add-genesis-account " $( laconicd keys show $VAL_KEY -a --keyring-backend test ) " 1000000000000000000000aphoton,1000000000000000000stake --keyring-backend test
laconicd add-genesis-account " $( laconicd keys show $USER1_KEY -a --keyring-backend test ) " 1000000000000000000000aphoton,1000000000000000000stake --keyring-backend test
laconicd add-genesis-account " $( laconicd keys show $USER2_KEY -a --keyring-backend test ) " 1000000000000000000000aphoton,1000000000000000000stake --keyring-backend test
laconicd add-genesis-account " $( laconicd keys show $USER3_KEY -a --keyring-backend test ) " 1000000000000000000000aphoton,1000000000000000000stake --keyring-backend test
laconicd add-genesis-account " $( laconicd keys show $USER4_KEY -a --keyring-backend test ) " 1000000000000000000000aphoton,1000000000000000000stake --keyring-backend test
2020-09-01 21:16:28 +00:00
# Sign genesis transaction
2022-09-07 07:26:51 +00:00
laconicd gentx $VAL_KEY 1000000000000000000stake --amount= 1000000000000000000000aphoton --chain-id $CHAINID --keyring-backend test
2020-09-01 21:16:28 +00:00
# Collect genesis tx
2022-09-07 07:26:51 +00:00
laconicd collect-gentxs
2020-09-01 21:16:28 +00:00
# Run this to ensure everything worked and that the genesis file is setup correctly
2022-09-07 07:26:51 +00:00
laconicd validate-genesis
2020-09-01 21:16:28 +00:00
# Start the node (remove the --pruning=nothing flag if historical queries are not needed)
2022-09-07 07:26:51 +00:00
laconicd start --pruning= nothing --rpc.unsafe --keyring-backend test --log_level info --json-rpc.api eth,txpool,personal,net,debug,web3 --api.enable --mode validator