Autheo Testnet Node Setup
This document covers the process for starting and managing a new node on the Autheo Testnet.
Prerequisites
Software
Hardware
- 8 vCPU
- 32GB RAM
- 512 GB SSD
Step 1: Cloning and Building the Binary
You must first clone the Testnet repository from Github using the following command:
git clone git@github.com:autheo-platform/testnet.git
After cloning the repo, enter the testnet directory and build the autheod binary:
cd testnetmake build
After completing the build process, move the binary to /usr/local/bin/:
mv build/autheod /usr/local/bin/
And finally check the autheod
version to verify successful installation:
autheod version
Step 2: Starting a New Node using Shell Script
Create keys for your new validator node
On the machine that will be hosting your new validator node, run the following command to generate a new key:
autheod keys add mykey --keyring-backend=file --home "/path-to your-dir/autheo-node"
Initialize the new node
The following command will set up a directory for your new node, initialize it and generate necessary configuration files:
autheod init "new-node" --chain-id=autheo_785-1 --home "/path-to your-dir/new-node"
Step 3: Copy the Genesis file from the Github Repository
Your new node will need to use the same blockchain configuration as the Testnet network. To do this, copy the genesis.json
file from the Testnet repository. Alternately, if you have an older node you may instead run the following command to copy the file from there:
cp /path-to your-dir/autheo-node1/config/genesis.json /path-to your-dir/new-node/config/
Step 4: Fetch the New Delegated Address
Your can fetch the delegated address of your new node's key by using the following command:
autheod keys show mykey -a --keyring-backend=file --home "/path-to your-dir/new-node"
The response should be an alphanumeric string beginning with "autheol." You will need this address for the next step.
Step 5: Fund the New Validator
Your new will require a minimum amount of THEO before commencing validation. You can send THEO to your new node by using the following command on a previously established node:
autheod tx bank send <first-address> <new-address> <amount>aauth --from=mykey1 --chain-id=autheo_785-1 --keyring-backend=file --home "/path-to your-dir/new-node" --gas="auto" --gas-prices="<amount>aauth" --yes
You will need to replace the following variables:
<first-address>
with the address of the node you are sending the funds from.<new-address>
with the address of the new validator node you are creating.<first-key>
with the first validator's key name.
Here is the same command, but with these variables replaced with actual data:
autheod tx bank send tautheo1x9c8xa79rjxy6lzatzkua5236uvgdyyx4v24 tautheo1mhvq6ec86af735udf5wge4whsj6zq9e8nt3m 1000000000000000000000000aauth --from=mykey2 --chain-id=autheo_785-1 --keyring-backend=file --home"/home/zeever/testnet/autheo-node2" --gas="2000000" --gas-prices="25000aauth" --yes
After running this command, you can verify that the transaction succeeded by checking the balance of your new validator node:
autheod query bank balances <new-address> --home "/path-to your-dir/new-node"
Step 6: Create the New Validator
Once properly funded, you can create the new validator by running the following command:
autheod tx staking create-validator --amount=<amount>aauth --from=mykey --pubkey=$(autheod tendermint show-validator --home "/path-to your-dir/new-node") --moniker="new-node" --chain-id=autheo_785-1 --commission-rate="0.10" --commission-max-rate="0.20" --commission-max-change-rate="0.01" --min-selfdelegation="1" --keyring-backend=file --home "/path-to your-dir/new-node" --gas="auto" --gas-prices="<amount>aauth" --yes
Here is the same command, but with variables replaced with actual data:
autheod tx staking create-validator --amount=5000000000000000000000aauth --from=mykey5 --pubkey=$(autheod tendermint show-validator --home "/home/zeever/testnet/autheo-node5") --moniker="autheo-node5" --chainid=autheo_785-1 --commission-rate="0.10" --commission-max-rate="0.20" --commission-max-change-rate="0.01" --min-self-delegation="1" --keyring-backend=file --home "/home/zeever/testnet/autheo-node5" --gas="2000000" --gas-prices="2500aauth" --yes
Step 7: Start the New Node
If you have an old node, ensure that you modify the ports to avoid a conflict by opening the new node's configuration:
vim /path-to your-dir/new-node/config/config.toml
And changing the P2P peer value to the Node ID
of the current and latest peer. To find the Tendermint node IDF of the new node, use the following command:
autheod tendermint show-node-id --home "/path-to your-dir/new-node"
Once you've completed this, save and exit the configuration. You can then use the following command to start the node:
autheod start --home /YOUR_HOME-DIR/new-node --pruning=nothing --evm.tracer=json --trace --log_level info --minimum-gas-prices=0aauth --json-rpc.api=eth,net,web3,debug
Step 8: Verify New Node Operations
Once the new node is running, you can verify that it is recognized as a validator using the following command:
autheod query staking validators --chain-id=autheo_785-1 --home "/path-to your-dir/new-node"
You should receive the following output with details about your new node:
description:details: ""identity: ""moniker: new-nodesecurity_contact: ""website: ""jailed: truemin_self_delegation: "1"operator_address: tautheovaloper1mhvq6ec86af735udf5wge4whsj6zq92t6qkhstatus: BOND_STATUS_UNBONDINGtokens: "4500000000000000000000"unbonding_height: "26950"unbonding_ids:- "1"unbonding_on_hold_ref_count: "0"unbonding_time: "2025-03-27T06:53:57.261801873Z"