Update script to setup account and create gentx
This commit is contained in:
parent
0c25f9daff
commit
ad22b6350b
@ -2,23 +2,16 @@ services:
|
|||||||
laconicd:
|
laconicd:
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
image: cerc/laconicd:local
|
image: cerc/laconicd:local
|
||||||
command: ["bash", "-c", "/opt/run-laconicd.sh"]
|
command: ["bash", "-c", "/opt/create-gentx.sh"]
|
||||||
environment:
|
environment:
|
||||||
CERC_MONIKER: ${CERC_MONIKER:-TestnetNode}
|
CERC_MONIKER: ${CERC_MONIKER:-TestnetNode}
|
||||||
CERC_CHAIN_ID: ${CERC_CHAIN_ID:-laconic_9000-1}
|
CERC_CHAIN_ID: ${CERC_CHAIN_ID:-laconic_9000-1}
|
||||||
CERC_PEERS: ${CERC_PEERS}
|
DENOM: ${DENOM}
|
||||||
MIN_GAS_PRICE: ${MIN_GAS_PRICE:-0.001}
|
KEY_NAME: ${KEY_NAME:-mykey}
|
||||||
CERC_LOGLEVEL: ${CERC_LOGLEVEL:-info}
|
PVT_KEY: ${PVT_KEY}
|
||||||
volumes:
|
volumes:
|
||||||
- laconicd-data:/root/.laconicd
|
- laconicd-data:/root/.laconicd
|
||||||
- ../config/laconicd/run-laconicd.sh:/opt/run-laconicd.sh
|
- ../config/laconicd/create-gentx.sh:/opt/create-gentx.sh
|
||||||
ports:
|
|
||||||
- "6060"
|
|
||||||
- "26657"
|
|
||||||
- "26656"
|
|
||||||
- "9473"
|
|
||||||
- "9090"
|
|
||||||
- "1317"
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "nc", "-vz", "127.0.0.1", "26657"]
|
test: ["CMD", "nc", "-vz", "127.0.0.1", "26657"]
|
||||||
interval: 30s
|
interval: 30s
|
||||||
|
@ -4,56 +4,52 @@ if [[ -n "$CERC_SCRIPT_DEBUG" ]]; then
|
|||||||
set -x
|
set -x
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DENOM" ]; then
|
||||||
|
echo "DENOM environment variable not set, exiting..."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
set -e
|
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 "Env:"
|
||||||
echo "Moniker: $CERC_MONIKER"
|
echo "Moniker: $CERC_MONIKER"
|
||||||
echo "Chain Id: $CERC_CHAIN_ID"
|
echo "Chain Id: $CERC_CHAIN_ID"
|
||||||
echo "Persistent peers: $CERC_PEERS"
|
echo "Denom: $DENOM"
|
||||||
echo "Min gas price: $MIN_GAS_PRICE"
|
echo "Key name: $KEY_NAME"
|
||||||
echo "Log level: $CERC_LOGLEVEL"
|
echo "PVT Key: $PVT_KEY"
|
||||||
|
|
||||||
NODE_HOME=/root/.laconicd
|
NODE_HOME=/root/.laconicd
|
||||||
|
|
||||||
# TODO: Add command to import key
|
KEYRING=test
|
||||||
|
|
||||||
# Set chain id in config
|
# Set chain id in config
|
||||||
laconicd config set client chain-id $CERC_CHAIN_ID --home $NODE_HOME
|
laconicd config set client chain-id $CERC_CHAIN_ID --home $NODE_HOME
|
||||||
|
|
||||||
# Check if node data dir already exists
|
export CERC_MONIKER=$(echo "$CERC_MONIKER" | sed -e 's/^["'\'']//g' -e 's/["'\'']$//g')
|
||||||
if [ -z "$(ls -A "$NODE_HOME/data")" ]; then
|
export CERC_CHAIN_ID=$(echo "$CERC_CHAIN_ID" | sed -e 's/^["'\'']//g' -e 's/["'\'']$//g')
|
||||||
# Init node
|
export DENOM=$(echo "$DENOM" | sed -e 's/^["'\'']//g' -e 's/["'\'']$//g')
|
||||||
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
|
|
||||||
|
|
||||||
# TODO: Add command to create gentxs
|
# TODO: Update amounts
|
||||||
# Use provided genesis config
|
BALANCE=100000000000000000000000$DENOM
|
||||||
cp $input_genesis_file $NODE_HOME/config/genesis.json
|
STAKE_AMOUNT=100000000000000000000$DENOM
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Support both importing key and generating account
|
||||||
|
if [ -n "$PVT_KEY" ]; then
|
||||||
|
# If PVT_KEY is provided, import the key
|
||||||
|
laconicd keys import-hex "$KEY_NAME" "$PVT_KEY"
|
||||||
else
|
else
|
||||||
echo "Node data dir $NODE_HOME/data already exists, skipping initialization..."
|
# If PVT_KEY is not provided, create a new key
|
||||||
|
laconicd keys add "$KEY_NAME"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Enable cors
|
laconicd genesis add-genesis-account $KEY_NAME $BALANCE --keyring-backend $KEYRING --home $NODE_HOME
|
||||||
sed -i 's/cors_allowed_origins.*$/cors_allowed_origins = ["*"]/' $HOME/.laconicd/config/config.toml
|
|
||||||
|
|
||||||
# Update config with persistent peers
|
laconicd genesis gentx $KEY_NAME $STAKE_AMOUNT --keyring-backend $KEYRING --home $NODE_HOME
|
||||||
sed -i "s/^persistent_peers *=.*/persistent_peers = \"$CERC_PEERS\"/g" $NODE_HOME/config/config.toml
|
|
||||||
|
|
||||||
echo "Starting laconicd node..."
|
echo "Genesis transaction created successfully..."
|
||||||
laconicd start \
|
# Keep the script running indefinitely
|
||||||
--api.enable \
|
tail -f /dev/null
|
||||||
--minimum-gas-prices=${MIN_GAS_PRICE}alnt \
|
|
||||||
--rpc.laddr="tcp://0.0.0.0:26657" \
|
|
||||||
--gql-playground --gql-server \
|
|
||||||
--log_level $CERC_LOGLEVEL \
|
|
||||||
--home $NODE_HOME
|
|
||||||
|
Loading…
Reference in New Issue
Block a user