-
Notifications
You must be signed in to change notification settings - Fork 272
Open
Description
Hi @XinyuCRO,
I know you are busy on working on this.
Please see this
Thanks
Metamask not working
I used private key of validators node to metamask, it's not even showing the balances and transaction is not working properly.
Setup
Four validators and one RPC
Questions
- Is There any genesis changes to support EIP-7702
** init.sh **
#!/bin/bash
set -e
set -x
# ===== Config Variables =====
KEY="val-key"
CHAINID="cronos_777-1"
MONIKER_PREFIX="cronos-node"
KEYRING="file"
KEYALGO="eth_secp256k1"
NUM_NODES=4
SCRIPT_DIR=$(pwd)
GENTX_AMOUNT="200000000000000000000000stake"
INITIAL_BALANCE="5625000000000000000000000000stake"
# ===== Dependency Check =====
command -v jq > /dev/null 2>&1 || { echo >&2 "jq is not installed. Please install jq."; exit 1; }
# ===== Clean up old node directories =====
for (( i=1; i<=NUM_NODES; i++ )); do
done
# ===== Init First Node =====
FIRST_NODE_HOME="$SCRIPT_DIR/${MONIKER_PREFIX}1"
cronosd init "${MONIKER_PREFIX}1" --chain-id "$CHAINID" --home "$FIRST_NODE_HOME" --overwrite
# ===== Modify genesis.json =====
GENESIS_FILE="$FIRST_NODE_HOME/config/genesis.json"
TMP_GENESIS="$FIRST_NODE_HOME/config/tmp_genesis.json"
jq '
.consensus.params.block.max_gas = "30000000" |
.consensus.params.block.time_iota_ms = "6000"
' "$GENESIS_FILE" > "$TMP_GENESIS" && mv "$TMP_GENESIS" "$GENESIS_FILE"
# ===== Add validator keys and genesis accounts =====
for (( i=1; i<=NUM_NODES; i++ )); do
NODE_HOME="$SCRIPT_DIR/${MONIKER_PREFIX}${i}"
VAL_KEY_NAME="${KEY}${i}"
mkdir -p "$NODE_HOME"
cronosd keys add "$VAL_KEY_NAME" --keyring-backend "$KEYRING" --algo "$KEYALGO" --home "$NODE_HOME" --output json
VAL_ADDRESS=$(cronosd keys show "$VAL_KEY_NAME" -a --keyring-backend "$KEYRING" --home "$NODE_HOME")
cronosd genesis add-genesis-account "$VAL_ADDRESS" "$INITIAL_BALANCE" --home "$FIRST_NODE_HOME"
done
# ===== Distribute genesis to all nodes =====
for (( i=2; i<=NUM_NODES; i++ )); do
cp "$FIRST_NODE_HOME/config/genesis.json" "$SCRIPT_DIR/${MONIKER_PREFIX}${i}/config/genesis.json"
done
# ===== Generate gentxs =====
for (( i=1; i<=NUM_NODES; i++ )); do
NODE_HOME="$SCRIPT_DIR/${MONIKER_PREFIX}${i}"
VAL_KEY_NAME="${KEY}${i}"
cronosd genesis gentx "$VAL_KEY_NAME" "$GENTX_AMOUNT" --keyring-backend "$KEYRING" --home "$NODE_HOME" --chain-id "$CHAINID" -y
done
# ===== Collect gentxs to node1 =====
mkdir -p "$FIRST_NODE_HOME/config/gentx"
for (( i=2; i<=NUM_NODES; i++ )); do
cp "$SCRIPT_DIR/${MONIKER_PREFIX}${i}/config/gentx/"*.json "$FIRST_NODE_HOME/config/gentx/"
done
cronosd genesis collect-gentxs --home "$FIRST_NODE_HOME"
cronosd genesis validate --home "$FIRST_NODE_HOME"
# ===== Copy final genesis to all nodes =====
for (( i=2; i<=NUM_NODES; i++ )); do
cp "$FIRST_NODE_HOME/config/genesis.json" "$SCRIPT_DIR/${MONIKER_PREFIX}${i}/config/genesis.json"
done
# ===== Configure config.toml & app.toml =====
for (( i=1; i<=NUM_NODES; i++ )); do
NODE_HOME="$SCRIPT_DIR/${MONIKER_PREFIX}${i}"
CONFIG_FILE="$NODE_HOME/config/config.toml"
APP_FILE="$NODE_HOME/config/app.toml"
PORT_OFFSET=0
P2P_PORT=$((26656 + PORT_OFFSET))
RPC_PORT=$((26657 + PORT_OFFSET))
sed -i.bak "s/^external_address *=.*/external_address = \"127.0.0.1:$P2P_PORT\"/" "$CONFIG_FILE"
# Build persistent_peers
PEERS=""
for (( j=1; j<=NUM_NODES; j++ )); do
if [ $j -ne $i ]; then
PEER_ID=$(cronosd tendermint show-node-id --home "$SCRIPT_DIR/${MONIKER_PREFIX}${j}")
PEER_PORT=26656
PEERS+="$PEER_ID@cronosnode$j:$PEER_PORT,"
fi
done
PEERS=${PEERS::-1}
sed -i.bak "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" "$CONFIG_FILE"
sed -i.bak "s/^laddr *= \"tcp:\/\/127\.0\.0\.1:26657\"/laddr = \"tcp:\/\/0.0.0.0:$RPC_PORT\"/" "$CONFIG_FILE"
sed -i.bak "s/^laddr *= \"tcp:\/\/127\.0\.0\.1:26656\"/laddr = \"tcp:\/\/0.0.0.0:$P2P_PORT\"/" "$CONFIG_FILE"
# rm "$CONFIG_FILE.bak" "$APP_FILE.bak"
done
Metadata
Metadata
Assignees
Labels
No labels