Testnet

Artela

Installation Guide
CLI Command
Public Endpoint
Statesync
Snapshot
Explorer
Node Maps
Installation Guide
Installation Guide
CLI Command
Public Endpoint
Statesync
Snapshot
Explorer
Node Maps

How To Install Full Node Artela Network Testnet

Setting up vars

Your Nodename (validator) that will shows in explorer

NODENAME=<Your_Nodename_Moniker>

Save variables to system

echo "export NODENAME=$NODENAME" >> $HOME/.bash_profile
if [ ! $WALLET ]; then
    echo "export WALLET=wallet" >> $HOME/.bash_profile
fi
echo "export ARTELA_CHAIN_ID=artela_11822-1" >> $HOME/.bash_profile
source $HOME/.bash_profile

Update packages

sudo apt update && sudo apt upgrade -y

Install dependencies

sudo apt install curl build-essential git wget jq make gcc tmux net-tools ccze -y

Install go

if ! [ -x "$(command -v go)" ]; then
  ver="1.20.4"
  cd $HOME
  wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
  sudo rm -rf /usr/local/go
  sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
  rm "go$ver.linux-amd64.tar.gz"
  echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash_profile
  source ~/.bash_profile
fi

Download and build binaries

cd $HOME
git clone https://github.com/artela-network/artela artela
cd artela
git checkout v0.4.7-rc4
make install

Config app

artelad config chain-id $ARTELA_CHAIN_ID

Init app

artelad init $NODENAME --chain-id $ARTELA_CHAIN_ID

Download configuration

curl -Ls https://snapshot.konsortech.xyz/artela-testnet/addrbook.json > $HOME/.artelad/config/addrbook.json
curl -Ls https://snapshot.konsortech.xyz/artela-testnet/genesis.json > $HOME/.artelad/config/genesis.json

Set seeds and peers

sed -i -e "s|^seeds *=.*|seeds = \"cfefcbdad8ed12e43a2599037790ea156a5d2068@testnet-seed.konsortech.xyz:42156\"|" $HOME/.artelad/config/config.toml

Disable indexing

indexer="null"
sed -i -e "s/^indexer *=.*/indexer = \"$indexer\"/" $HOME/.artelad/config/config.toml

Config pruning

pruning="custom"
pruning_keep_recent="100"
pruning_keep_every="0"
pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.artelad/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.artelad/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.artelad/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.artelad/config/app.toml

Set minimum gas price

sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.02uart\"|" $HOME/.artelad/config/app.toml

Create service

sudo tee /etc/systemd/system/artelad.service > /dev/null <<EOF
[Unit]
Description=Artela Node
After=network-online.target

[Service]
User=$USER
ExecStart=$(which artelad) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

Register and start service

sudo systemctl daemon-reload
sudo systemctl enable artelad
sudo systemctl restart artelad && sudo journalctl -u artelad -f -o cat

Guidence for Validator

Create wallet

To create new wallet you can use command below. Don’t forget to save the mnemonic

artelad keys add $WALLET

To recover your wallet using seed phrase

artelad keys add $WALLET --recover

Show your wallet list

artelad keys list

Save wallet info

Add wallet and validator address into variables

ARTELA_WALLET_ADDRESS=$(artelad keys show $WALLET -a)
ARTELA_VALOPER_ADDRESS=$(artelad keys show $WALLET --bech val -a)
echo 'export ARTELA_WALLET_ADDRESS='${ARTELA_WALLET_ADDRESS} >> $HOME/.bash_profile
echo 'export ARTELA_VALOPER_ADDRESS='${ARTELA_VALOPER_ADDRESS} >> $HOME/.bash_profile
source $HOME/.bash_profile

Create validator

check your wallet balance:

artelad query bank balances $ARTELA_WALLET_ADDRESS

To create your validator run command below

artelad tx staking create-validator \
  --amount 1000000000000000000uart \
  --from $WALLET \
  --commission-max-change-rate "0.01" \
  --commission-max-rate "0.2" \
  --commission-rate "0.07" \
  --min-self-delegation "1" \
  --pubkey  $(artelad tendermint show-validator) \
  --moniker $NODENAME \
  --chain-id $ARTELA_CHAIN_ID \
  --gas="200000"

Check your validator key

[[ $(artelad q staking validator $ARTELA_VALOPER_ADDRESS -oj | jq -r .consensus_pubkey.key) = $(artelad status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "\n\e[1m\e[32mTrue\e[0m\n" || echo -e "\n\e[1m\e[31mFalse\e[0m\n"

Get list of validators

artelad q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl

Usefull commands

Service management

Check logs

journalctl -fu artelad -o cat

Start service

sudo systemctl start artelad

Stop service

sudo systemctl stop artelad

Restart service

sudo systemctl restart artelad

Node info

Synchronization info

artelad status 2>&1 | jq .SyncInfo

Validator info

artelad status 2>&1 | jq .ValidatorInfo

Node info

artelad status 2>&1 | jq .NodeInfo

Show node id

artelad tendermint show-node-id

Wallet operations

List of wallets

artelad keys list

Recover wallet

artelad keys add $WALLET --recover

Delete wallet

artelad keys delete $WALLET

Get wallet balance

artelad query bank balances $ARTELA_WALLET_ADDRESS

Transfer funds

artelad tx bank send $ARTELA_WALLET_ADDRESS <TO_ARTELA_WALLET_ADDRESS> 1000000000000000000uart

Voting

artelad tx gov vote 1 yes --from $WALLET --chain-id=$ARTELA_CHAIN_ID

Staking, Delegation and Rewards

Delegate stake

artelad tx staking delegate $ARTELA_VALOPER_ADDRESS 1000000000000000000uart --from=$WALLET --chain-id=$ARTELA_CHAIN_ID --gas=auto

Redelegate stake from validator to another validator

artelad tx staking redelegate <srcValidatorAddress> <destValidatorAddress> 1000000000000000000uart --from=$WALLET --chain-id=$ARTELA_CHAIN_ID --gas=auto

Withdraw all rewards

artelad tx distribution withdraw-all-rewards --from=$WALLET --chain-id=$ARTELA_CHAIN_ID --gas=auto

Withdraw rewards with commision

artelad tx distribution withdraw-rewards $ARTELA_VALOPER_ADDRESS --from=$WALLET --commission --chain-id=$ARTELA_CHAIN_ID

Validator management

Edit validator

artelad tx staking edit-validator \
  --moniker=$NODENAME \
  --identity=<your_keybase_id> \
  --website="<your_website>" \
  --details="<your_validator_description>" \
  --chain-id=$ARTELA_CHAIN_ID \
  --from=$WALLET

Unjail validator

artelad tx slashing unjail \
  --broadcast-mode=block \
  --from=$WALLET \
  --chain-id=$ARTELA_CHAIN_ID \
  --gas=auto

Public Endpoint

RPC

https://testnet-artela-rpc.konsortech.xyz

EVM RPC

Network Name    : Artela Testnet
RPC URL         : https://testnet-artela-evm.konsortech.xyz
Chain ID        : 11822
Curreny Symbol  : ART

API

https://testnet-artela-api.konsortech.xyz

gRPC

testnet-artela.konsortech.xyz:42090

Peers and Seeds

Peers

7e583fda2efbc30c7a1ce13727320fc99c17a26d@testnet-artela.konsortech.xyz:42656

Seeds

cfefcbdad8ed12e43a2599037790ea156a5d2068@testnet-seed.konsortech.xyz:42156

Genesis & Address Book

Address Book

https://snapshot.konsortech.xyz/artela/addrbook.json

Genesis

https://snapshot.konsortech.xyz/artela/genesis.json

State Sync

sudo systemctl stop artelad

cp $HOME/.artelad/data/priv_validator_state.json $HOME/.artelad/priv_validator_state.json.backup
artelad tendermint unsafe-reset-all --home $HOME/.artelad --keep-addr-book

SNAP_RPC="https://testnet-artela-rpc.konsortech.xyz:443"

LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \
BLOCK_HEIGHT=$((LATEST_HEIGHT - 1000)); \
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)

echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH

peers="7e583fda2efbc30c7a1ce13727320fc99c17a26d@testnet-artela.konsortech.xyz:42656"
sed -i 's|^persistent_peers *=.*|persistent_peers = "'$peers'"|' $HOME/.artelad/config/config.toml

sed -i -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$SNAP_RPC,$SNAP_RPC\"| ; \
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"|" $HOME/.artelad/config/config.toml

mv $HOME/.artelad/priv_validator_state.json.backup $HOME/.artelad/data/priv_validator_state.json

sudo systemctl restart artelad
sudo journalctl -u artelad -f --no-hostname -o cat

Snapshot

Available Soon

Available Soon