Installation
worrell-testnet-1 — Node Manager Installation Guide
This script provides a completely interactive menu to install and manage a node connected to the worrell-testnet-1 network using Cosmovisor. When you run the script, it will ask for your moniker and port prefix, and then you can perform wallet/validator/node management operations from the menu.
| Field | Value |
|---|---|
| Chain ID | worrell-testnet-1 |
| Binary | worrelld (Cosmos SDK v0.53.6) |
| Source | worrellchain/worrell @ v0.1.2 |
| Genesis | worrell-testnet-1/genesis.json |
| Genesis sha256 | a81c507b12ba0678c3172394ff4bb03e1c3db60050cc5568c127a24ec19378fd |
| Persistent peer | bb9164c1bd9ed9ff2c0fd9e09b23285698e231de@164.68.98.186:26656 |
| Min gas price | 0.025uworrell |
| Faucet | POST http://164.68.98.186:4500 → {"address":"worrell1..."} (500 WORRELL) |
💢 Usage
git clone https://github.com/Edsny1/Worrel-Testnet.git && cd Worrel-Testnet && chmod +x worrell-node-manager.sh && ./worrell-node-manager.shWhen the script opens, the following will appear in order:
- Language selection (English / Türkçe)
- Main menu
1) Install Node
2) Check Sync Status
3) View Logs
4) Create Wallet
5) Import Wallet
6) Create Validator
7) Delegate Tokens
8) Send Tokens
9) Check Balance
10) Request Tokens from Faucet
11) Node Management
0) Exit💢 1) Install Node
This option will sequentially:
-
Ask for your Moniker (your node name)
-
Ask for a Port prefix — e.g., a 1 or 2-digit number like
10,26,45(if left blank, the default10is used). This prefix is added to the beginning of all service ports, ensuring no port conflicts if you run multiple nodes on the same server:Service Fixed Suffix Example (prefix=10) RPC 65710657P2P 65610656ABCI (proxy_app) 65810658pprof 06010060Prometheus 66010660REST API 31710317gRPC 09010090 -
Then automatically:
- Installs the required packages (
curl,jq,tar,build-essential, etc.). - If Go is already installed and the version is sufficient, it will not modify it (this is safe if other Cosmos nodes are running on your server). It only installs or updates Go if it is missing or the version is inadequate.
- Downloads the appropriate
worrelldbinary (v0.1.2, linux/amd64 or linux/arm64) from GitHub Releases. - Installs Cosmovisor (since it is a chain-agnostic tool, it can be shared with other nodes on the server).
- Creates the Cosmovisor directory structure (
~/.worrell/cosmovisor/genesis/bin/...). - Runs
worrelld init, downloads the officialgenesis.json, and verifies its sha256 checksum. - Configures
persistent_peers,minimum-gas-prices, pruning settings, and all your chosen ports. - Creates, enables, and starts a systemd service named
worrelld.service.
- Installs the required packages (
Installation details (moniker, port prefix) are saved in ~/.bash_profile as variables like WORRELL_MONIKER and WORRELL_PORT. This allows other menu options to use this information when you run the script again.
💢 2) Check Sync Status
worrelld status 2>&1 | jq .SyncInfoIf catching_up: false, synchronization is complete.
💢 3) View Logs
sudo journalctl -u worrelld -f --no-hostname -o cat💢 4-5) Create / Import Wallet
Runs worrelld keys add <name> or worrelld keys add <name> --recover. Store your mnemonic phrase in a safe place.
💢 6-8) Create Validator / Delegate / Send Tokens
Runs standard worrelld tx staking create-validator, tx staking delegate, and tx bank send commands with the parameters you input, using the worrell-testnet-1 chain-id and uworrell denom.
💢 9) Check Balance
worrelld query bank balances <wallet-or-address>💢 10) Request Tokens from Faucet
Resolves the address of your specified wallet using worrelld keys show and sends an automatic POST request to the faucet:
curl -X POST http://164.68.98.186:4500 \
-H "Content-Type: application/json" \
-d '{"address":"worrell1..."}'# Update the variables with your own information
MONIKER="YOUR_MONIKER"
IDENTITY="YOUR_KEYBASE_ID"
WEBSITE="https://yourwebsite.com"
SECURITY_CONTACT="your-email@example.com"
DETAILS="Your node description"
AMOUNT="490000000uworrell"
# Create the JSON file
cat <<EOF > $HOME/.worrell/validator.json
{
"pubkey": $(worrelld tendermint show-validator --home $HOME/.worrell),
"amount": "${AMOUNT}",
"moniker": "${MONIKER}",
"identity": "${IDENTITY}",
"website": "${WEBSITE}",
"security": "${SECURITY_CONTACT}",
"details": "${DETAILS}",
"commission-rate": "0.05",
"commission-max-rate": "0.20",
"commission-max-change-rate": "0.01",
"min-self-delegation": "1000000"
}
EOF# Define your wallet name and port information
WALLET="wallet-name"
PORT_PREFIX=$(grep 'WORRELL_PORT=' $HOME/.bash_profile 2>/dev/null | cut -d'=' -f2 | tr -d '"' | tr -d "'" || echo "10")
worrelld tx staking create-validator $HOME/.worrell/validator.json \
--from $WALLET \
--chain-id worrell-testnet-1 \
--home $HOME/.worrell \
--node tcp://127.0.0.1:${PORT_PREFIX}657 \
--gas auto \
--gas-adjustment 1.5 \
--gas-prices 0.025uworrell \
-y💢 11) Node Management
From the submenu, you can view node status, restart, stop, start, or completely delete it (deletion requires confirmation; it only removes files related to this node and does not touch the shared Go/Cosmovisor installation on the server).
💢 Firewall
You must open at least the P2P port to the outside (e.g., <prefix>656 based on your chosen prefix):
sudo ufw allow 10656/tcp # p2p (example: prefix=10)
sudo ufw allow 10657/tcp # rpc (optional, if you want to expose it)
sudo ufw allow 10317/tcp # REST API (optional)💢 Future Upgrades with Cosmovisor
If a governance upgrade proposal passes, you simply need to place the new binary in this folder:
mkdir -p $HOME/.worrell/cosmovisor/upgrades/<UPGRADE-NAME>/bin
cp <new-worrelld-binary> $HOME/.worrell/cosmovisor/upgrades/<UPGRADE-NAME>/bin/worrelld
chmod +x $HOME/.worrell/cosmovisor/upgrades/<UPGRADE-NAME>/bin/worrelldWhen the upgrade block is reached, Cosmovisor will automatically stop the node and restart it with the new binary. For upgrade announcements: t.me/worrellvalidators.
💢 Support
- GitHub Discussions: worrellchain/worrell
- Email: hello@worrellchain.com
- Telegram: t.me/worrellvalidators
