Welcome to the Elys testnet! This guide will help you set up a full node and join the testnet. The producer chain is the Cosmos Hub, and this testnet ensures compatibility and stability for the Interchain Security (ICS) environment.
- Consumer ID: 113
- Chain ID: elysicstestnet-1
Component | Minimum Specification |
---|---|
CPU | 8 cores |
RAM | 16 GB |
Storage | 200 GB SSD |
Network | 100 Mbps+ |
- Operating System: Ubuntu 20.04+ or macOS
- Go: v1.22.6
gaiad tx provider opt-in 113 \
--from [YOUR_KEY] \
--chain-id provider \
--fees 2000uatom \
--node https://rpc.provider-sentry-01.ics-testnet.polypore.xyz:443
wget https://raw.githubusercontent.com/elys-network/networks/main/testnet/elysicstestnet-1/create_node.sh
chmod +x create_node.sh
./create_node.sh "your-moniker-name"
⚠️ Important Note for Validators:
- Before running the script, ensure it does not automatically start the node (check and modify the script if needed)
- After running the script, you must replace the
$HOME/.elys/config/priv_validator_key.json
with your cosmos's provider testnetpriv_validator_key.json
file- Only start the node after completing the key replacement to avoid double signing
- Clone and Build
git clone https://github.com/elys-network/elys.git
cd elys
git checkout v0.54.0
make install
elysd init [your-moniker] --chain-id elysicstestnet-1
- Configure Node
a. Download Genesis File
curl -o $HOME/.elys/config/genesis.json https://raw.githubusercontent.com/elys-network/networks/refs/heads/main/testnet/elysicstestnet-1/genesis.json
b. For Validators: Replace Validator Key
- Replace
$HOME/.elys/config/priv_validator_key.json
with your cosmos's provider testnet key - Alternative key delegation instructions available here
c. Configure Node Settings
- Add persistent peers and seeds in
config.toml
- Set minimum gas prices in
app.toml
:
minimum-gas-prices = "0.0003uelys,0.001ibc/F082B65C88E4B6D5EF1DB243CDA1D331D002759E938A0F5CD3FFDC5D53B3E349,0.001ibc/C4CFF46FD6DE35CA4CF4CE031E643C8FDC9BA4B99AE598E9B0ED98FE3A2319F9"
c. For Governors: Run those commands to register as a governor
-
Retrieve the governor pubkey:
elysd cometbft show-validator
-
Create the governor.json file:
cat <<EOF > /tmp/governor.json
{
"pubkey": [PUBKEY],
"amount": "10000000uelys",
"moniker": "[MONIKER]",
"identity": "Elys governor",
"website": "https://elys.network",
"security": "[email protected]",
"details": "validator's (optional) details",
"commission-rate": "0.1",
"commission-max-rate": "0.2",
"commission-max-change-rate": "0.01",
"min-self-delegation": "1"
}
EOF
- Create the governor:
elysd tx staking create-validator \
/tmp/governor.json \
--from [YOUR_KEY] \
--chain-id elysicstestnet-1 \
--fees 20000uelys \
--gas auto
elysd start
- Create Service File
sudo nano /etc/systemd/system/elysd.service
- Add Service Configuration
[Unit]
Description=Elys Network Testnet Node
After=network.target
[Service]
User=[user]
ExecStart=$(which elysd) start
Restart=always
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
- Enable and Manage Service
sudo systemctl daemon-reload
sudo systemctl enable elysd
# Start node
sudo systemctl start elysd
# Stop node
sudo systemctl stop elysd
# Check logs
sudo journalctl -u elysd -f -o cat
# Chain: provider
- Client: 07-tendermint-186
* Connection: connection-141
+ Channel: channel-289
| Port: provider
| Counterparty: channel-0
+ Channel: channel-290
| Port: transfer
| Counterparty: channel-1
# Chain: elysicstestnet-1
- Client: 07-tendermint-0
* Connection: connection-0
+ Channel: channel-0
| Port: consumer
| Counterparty: channel-289
+ Channel: channel-1
| Port: transfer
| Counterparty: channel-290
- Client: 07-tendermint-1
- Client: 07-tendermint-2
* Connection: connection-1
+ Channel: channel-2
| Port: transfer
| Counterparty: channel-287
- Client: 07-tendermint-3
- Client: 07-tendermint-4
* Connection: connection-2
+ Channel: channel-3
| Port: transfer
| Counterparty: channel-578
# Chain: grand-1
- Client: 07-tendermint-361
- Client: 07-tendermint-362
* Connection: connection-331
+ Channel: channel-287
| Port: transfer
| Counterparty: channel-2
# Chain: axelar-testnet-lisbon-3
- Client: 07-tendermint-1064
* Connection: connection-826
+ Channel: channel-578
| Port: transfer
| Counterparty: channel-3