Fix create and collect gentx script

This commit is contained in:
Shreerang Kale 2025-05-14 13:31:32 +05:30
parent f315858479
commit f07aa1a766
3 changed files with 24 additions and 19 deletions

View File

@ -22,17 +22,18 @@
Required key files are not defined. Required key files are not defined.
Please set genesis_file in run-first-validator-vars.yml. Please set genesis_file in run-first-validator-vars.yml.
when: not genesis_file when: not genesis_file
- name: Fetch laconicd stack
shell: laconic-so fetch-stack git.vdb.to/cerc-io/laconicd-stack --git-ssh --pull
- name: Setup required repositories # - name: Fetch laconicd stack
shell: > # shell: laconic-so fetch-stack git.vdb.to/cerc-io/laconicd-stack --git-ssh --pull
laconic-so --stack ~/cerc/laconicd-stack/stack-orchestrator/stacks/mainnet-laconicd
setup-repositories --git-ssh --pull
- name: Build container images # - name: Setup required repositories
shell: | # shell: >
laconic-so --stack ~/cerc/laconicd-stack/stack-orchestrator/stacks/mainnet-laconicd build-containers # laconic-so --stack ~/cerc/laconicd-stack/stack-orchestrator/stacks/mainnet-laconicd
# setup-repositories --git-ssh --pull
# - name: Build container images
# shell: |
# laconic-so --stack ~/cerc/laconicd-stack/stack-orchestrator/stacks/mainnet-laconicd build-containers
- name: Create deployment spec file - name: Create deployment spec file
shell: | shell: |
@ -80,7 +81,7 @@
- name: Run script to create and collect gentx - name: Run script to create and collect gentx
shell: | shell: |
docker run -it \ docker run -i \
-v {{data_directory}}/{{ mainnet_deployment_dir }}/data/laconicd-data:/root/.laconicd \ -v {{data_directory}}/{{ mainnet_deployment_dir }}/data/laconicd-data:/root/.laconicd \
-v {{data_directory}}/{{ mainnet_deployment_dir }}/config/mainnet-laconicd:/scripts \ -v {{data_directory}}/{{ mainnet_deployment_dir }}/config/mainnet-laconicd:/scripts \
-e "PVT_KEY={{ pvt_key }}" \ -e "PVT_KEY={{ pvt_key }}" \

View File

@ -4,6 +4,7 @@ set -e
NODE_HOME=/root/.laconicd NODE_HOME=/root/.laconicd
genesis_file_path=$NODE_HOME/config/genesis.json genesis_file_path=$NODE_HOME/config/genesis.json
KEYRING="test"
if [ -f "$genesis_file_path" ]; then if [ -f "$genesis_file_path" ]; then
echo "Genesis file already created, exiting..." echo "Genesis file already created, exiting..."
@ -44,17 +45,20 @@ laconicd init $MONIKER --chain-id=$CHAIN_ID --home $NODE_HOME
cp $input_genesis_file $genesis_file_path cp $input_genesis_file $genesis_file_path
# Import private key passed via PVT_KEY # Import private key passed via PVT_KEY
laconicd keys import-hex "$KEY_NAME" "$PVT_KEY" laconicd keys import-hex "$KEY_NAME" "$PVT_KEY" --keyring-backend $KEYRING
account_address=$(laconicd keys list | awk -v key_name="$KEY_NAME" ' account_address=$(laconicd keys show "$KEY_NAME" --keyring-backend "$KEYRING" | grep 'address:' | awk -F': ' '{print $2}' | xargs)
$1 == "- address:" {addr=$3}
$1 == "name:" && $2 == key_name {print addr; exit} if [ -z "$account_address" ]; then
') echo "Failed to get account address for key name $KEY_NAME, exiting..."
laconicd keys list --keyring-backend $KEYRING
exit 1
fi
stake_amount=$(jq -r --arg address "$account_address" --arg denom "$DENOM" '.app_state.bank.balances[] | select(.address == $address) | .coins[] | select(.denom == $denom) | .amount' $genesis_file_path) stake_amount=$(jq -r --arg address "$account_address" --arg denom "$DENOM" '.app_state.bank.balances[] | select(.address == $address) | .coins[] | select(.denom == $denom) | .amount' $genesis_file_path)
# Create gentx with staked amount equal to allocated balance # Create gentx with staked amount equal to allocated balance
laconicd genesis gentx $KEY_NAME $stake_amount$DENOM --chain-id $CHAIN_ID laconicd genesis gentx $KEY_NAME $stake_amount$DENOM --chain-id $CHAIN_ID --keyring-backend $KEYRING
# Collect the gentx and validate # Collect the gentx and validate
laconicd genesis collect-gentxs laconicd genesis collect-gentxs

View File

@ -29,13 +29,13 @@ if [ -z "$(ls -A "$NODE_HOME/data")" ]; then
# Init node # Init node
echo "Initializing a new laconicd node with moniker $CERC_MONIKER and chain id $CERC_CHAIN_ID" 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 laconicd init $CERC_MONIKER --chain-id=$CERC_CHAIN_ID --home $NODE_HOME
# Use provided config files
cp $input_genesis_file $NODE_HOME/config/genesis.json
else else
echo "Node data dir $NODE_HOME/data already exists, skipping initialization..." echo "Node data dir $NODE_HOME/data already exists, skipping initialization..."
fi fi
# Use provided config files
cp $input_genesis_file $NODE_HOME/config/genesis.json
# Enable cors # Enable cors
sed -i 's/cors_allowed_origins.*$/cors_allowed_origins = ["*"]/' $NODE_HOME/config/config.toml sed -i 's/cors_allowed_origins.*$/cors_allowed_origins = ["*"]/' $NODE_HOME/config/config.toml