Nabarun
0e0ddaa5ef
Part of [Create a public laconicd testnet](https://www.notion.so/Create-a-public-laconicd-testnet-896a11bdd8094eff8f1b49c0be0ca3b8) - To be handled in an upcoming PR: - Add laconic-registry-cli and console app to the stack Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com> Reviewed-on: cerc-io/testnet-laconicd-stack#1 Co-authored-by: Nabarun <nabarun@deepstacksoft.com> Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
48 lines
1.3 KiB
Bash
Executable File
48 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
if [[ -n "$CERC_SCRIPT_DEBUG" ]]; then
|
|
set -x
|
|
fi
|
|
|
|
set -e
|
|
|
|
input_genesis_file=/root/.laconicd/tmp/genesis.json
|
|
if [ ! -f ${input_genesis_file} ]; then
|
|
echo "Genesis file not provided, exiting..."
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$CERC_PEERS" ]; then
|
|
echo "Persistent peers not provided, exiting..."
|
|
exit 1
|
|
fi
|
|
|
|
echo "Env:"
|
|
echo "Moniker: $CERC_MONIKER"
|
|
echo "Chain Id: $CERC_CHAIN_ID"
|
|
echo "Persistent peers: $CERC_PEERS"
|
|
echo "Log level: $CERC_LOGLEVEL"
|
|
|
|
NODE_HOME=/root/.laconicd
|
|
|
|
# Set chain id in config
|
|
laconicd config set client chain-id $CERC_CHAIN_ID --home $NODE_HOME
|
|
|
|
# Check if node data dir already exists
|
|
if [ -z "$(ls -A "$NODE_HOME/data")" ]; then
|
|
# Init node
|
|
echo "Initializing a new laconicd node with moniker $CERC_MONIKER and chain id $CERC_CHAIN_ID"
|
|
laconicd init $CERC_MONIKER --chain-id=$CERC_CHAIN_ID --home $NODE_HOME
|
|
|
|
# Use provided genesis config
|
|
cp $input_genesis_file $NODE_HOME/config/genesis.json
|
|
else
|
|
echo "Node data dir $NODE_HOME/data already exists, skipping initialization..."
|
|
fi
|
|
|
|
# Update config with persistent peers
|
|
sed -i "s/^persistent_peers *=.*/persistent_peers = \"$CERC_PEERS\"/g" $NODE_HOME/config/config.toml
|
|
|
|
echo "Starting laconicd node..."
|
|
laconicd start --gql-playground --gql-server --log_level $CERC_LOGLEVEL --home $NODE_HOME
|