Join the Testnet
Here is a list of Migaloo Testnets along with their current status. You will need to know the version tag for installation of the migalood binary. To install migalood, follow the instructions in the installing migalood section.
To keep up with upgrades and syncing information on the active Testnet, you can refer to the Testnet's repository, which is the definitive source of truth.
If you encounter any difficulties, don't hesitate to seek assistance on Discord.
narwhal-2
v4.1.0-testnet-rc2
Active
https://migaloo-testnet-rpc.polkachu.com/
https://migaloo-testnet-api.polkachu.com/
For information like State-Sync, Node Snapshots and more, please refer to Polkachu's Migaloo Testnet page.
Minimum Hardware Requirements
Operating System: Linux or macOS Disk Space: At least 100GB of free space is recommended. CPU: Multi-core processor, 4+ cores recommended RAM: 8GB+ recommended Network: Good internet connectivity
Configuration of Shell Variables
For this guide, we will be using shell variables. This will enable the use of the client commands verbatim. It is important to remember that shell commands are only valid for the current shell session, and if the shell session is closed, the shell variables will need to be re-defined.
If you want variables to persist for multiple sessions, then set them explicitly in your shell .profile, as you did for the Go environment variables.
To clear a variable binding, use unset $VARIABLE_NAME. Shell variables should be named with ALL CAPS.
Choose a testnet
Set the CHAIN_ID:
CHAIN_ID=narwhal-2Set your moniker name
Choose your <moniker-name>, this can be any name of your choosing and will identify your validator in the explorer. Set the MONIKER_NAME:
MONIKER_NAME=<moniker-name>
#Example
MONIKER_NAME="Moby Dick Validator"Setting up the Node
These instructions will direct you on how to initialise your node, synchronise to the network and upgrade your node to a validator.
Initialize the chain
migalood init $MONIKER_NAME --chain-id $CHAIN_IDThis will generate the following files in ~/.migalood/config/
genesis.jsonnode_key.jsonpriv_validator_key.json
Download the Genesis file
curl https://raw.githubusercontent.com/White-Whale-Defi-Platform/migaloo-networks/main/narwhal-2/genesis.json > ~/.migalood/config/genesis.jsonThis will replace the genesis file created using migalood init command with the genesis file for the Testnet.
Set persistent peers
Persistent peers will be required to tell your node where to connect to other nodes and join the network. To retrieve the peers for the chosen Testnet, visit Polkachu's Peer page.
#Set the base repo URL for the testnet & retrieve peers
[email protected]:26656,[email protected]:26656,[email protected]:2000,[email protected]:3340,[email protected]:2550,[email protected]:37095,[email protected]:20756,[email protected]:26656,[email protected]:26656,[email protected]:20756,[email protected]:26656,[email protected]:20756,[email protected]:20756,[email protected]:26656,[email protected]:2000,[email protected]:3000,[email protected]:20756,[email protected]:26656,[email protected]:26656,[email protected]:20756
# check it worked
echo $PEERS
#Update persistent_peers setting in config.toml.
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.migalood/config/config.tomlSet minimum gas prices
In $HOME/.migalood/config/app.toml, set gas prices:
#note testnet denom
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0uwhale\"/" ~/.migalood/config/app.tomlCreate a local key pair
Create a new key pair or restore a key for your validator:
# Create new keypair
migalood keys add <key-name>
# Restore existing migaloo wallet with mnemonic seed phrase.
# You will be prompted to enter mnemonic seed.
migalood keys add <key-name> --recover
# Query the keystore for your public address
migalood keys show <key-name> -aReplace <key-name> with a key name of your choosing.
After creating a new key, the key information and seed phrase will be shown. It is essential to write this seed phrase down and keep it in a safe place. The seed phrase is the only way to restore your keys.
Get some testnet tokens
Testnet tokens can be requested from the #testnet-faucet channel on Discord.
To request tokens type $request <your-public-address> narwhal in the message field and press enter.
Setup cosmovisor
Follow these instructions to setup cosmovisor and start the node.
Syncing the node
After starting the migalood daemon, the chain will begin to sync to the network. The time to sync to the network will vary depending on your setup, but could take a very long time. To query the status of your node:
# Query via the RPC (default port: 26657)
curl http://localhost:26657/status | jq .result.sync_info.catching_upIf this command returns true then your node is still catching up. If it returns false then your node has caught up to the network current block and you are safe to proceed to upgrade to a validator node.
Upgrade to a validator
To upgrade the node to a validator, you will need to submit a create-validator transaction:
migalood tx staking create-validator \
--amount 9000000uwhale \
--commission-max-change-rate "0.1" \
--commission-max-rate "0.20" \
--commission-rate "0.1" \
--min-self-delegation "1" \
--details "validators write bios too" \
--pubkey=$(migalood tendermint show-validator) \
--moniker $MONIKER_NAME \
--chain-id $CHAIN_ID \
--gas-prices 0uwhale \
--from <key-name>Backup critical files
There are certain files that you need to backup to be able to restore your validator if, for some reason, it is damaged or lost in some way. Please make a secure backup of the following files located in ~/.migalood/config/:
priv_validator_key.jsonnode_key.json
It is recommended that you encrypt the backup of these files.
Last updated