Artela
The Warden Protocol is a modular L1 blockchain for omnichain applications, "OApps". Our mission is to empower developers to simply launch secure OApps by giving them modular infrastructure for securit
RPC: https://artela.rpc.cryptomolot.com/
Resources
Hardware requirements
8-Cores
16 GB
1 TB NVME
200mbps network bandwidth
Linux (Ubuntu 22.04 x64)
Installation 💾
Update repositories
apt update && apt upgrade -y
Install dependencies
sudo apt install curl git wget htop tmux build-essential jq make lz4 gcc unzip -y
Install GO 1.22.2
sudo rm -rf /usr/local/go && \
curl -L https://go.dev/dl/go1.22.2.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local && \
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profile && \
source .bash_profile && \
go version
Set variables
change the <wallet-name>, <moniker>. And ARTELA_PORT # if you needed
echo "export ARTELA_WALLET="<wallet-name>"" >> $HOME/.bash_profile
echo "export ARTELA_MONIKER="<moniker>"" >> $HOME/.bash_profile
echo "export ARTELA_CHAIN_ID="artela_11822-1"" >> $HOME/.bash_profile
echo "export ARTELA_PORT="26"" >> $HOME/.bash_profile
source $HOME/.bash_profile
Get binaries
cd $HOME
rm -rf artela
git clone https://github.com/artela-network/artela
cd artela
git checkout v0.4.7-rc7-fix-execution
make install
Initialize
change the <moniker>
artelad config node tcp://localhost:${ARTELA_PORT}657
artelad config keyring-backend os
artelad config chain-id artela_11822-1
artelad init "<moniker>" --chain-id artela_11822-1
Download genesis and addrbook
wget -O $HOME/.artelad/config/genesis.json "https://docs.artela.network/assets/files/genesis-314f4b0294712c1bc6c3f4213fa76465.json"
wget -O $HOME/.artelad/config/addrbook.json https://testnet-files.itrocket.net/artela/addrbook.json
Add seeds/bpeers/peers in config.toml
external_address=$(wget -qO- eth0.me)
sed -i.bak -e "s/^external_address =./external_address = "$external_address:26656"/" $HOME/.warden/config/config.toml
PEERS="5c9b1bc492aad27a0197a6d3ea3ec9296504e6fd@artela-testnet-peer.itrocket.net:30656,e87a90f600dd4e1415f39421d885bde824586c67@161.97.109.65:26656,cf41581cb27bd13d4c72665fca905dba05bf1588@135.181.57.151:39656,b7da5fca649c5a0fefb0ab3512edf5c11ccd21c4@80.85.243.60:26656,7dc5af98a958b494d432ce191b08174d5a0092b6@109.199.96.99:26656,b27334c54889c7d3bf17ede7659afa3fdeea04ba@154.53.63.241:3456,b00b048b1516b13b38d455878d34a0dadedca367@65.108.65.62:39656,dc1cb0cb8e9dc7c7632a1eea3b246353c9de4962@89.117.20.137:3456,c1ebbbb495113f838bad5b09221a11813518b18c@109.199.127.159:26656,bdc404f1a82772e7454512841bdfdaf3e3a6e165@109.199.127.207:26656,5a30a57992bf0b2d2c5c289a9a7b6d3c9b88a5e0@213.199.56.75:30656"
SEEDS="8d0c626443a970034dc12df960ae1b1012ccd96a@artela-testnet-seed.itrocket.net:30656"
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.artelad/config/config.toml
Set minimum gas-price
sed -i 's|minimum-gas-prices =.*|minimum-gas-prices = "0.025art"|g' $HOME/.artelad/config/app.toml
(Optional) Pruning
sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" $HOME/.artelad/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $HOME/.artelad/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"50\"/" $HOME/.artelad/config/app.toml
(Optional) Disable indexer
default indexer="kv"
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $HOME/.artelad/config/config.toml
Create a service file
sudo tee /etc/systemd/system/artelad.service > /dev/null <<EOF
[Unit]
Description=Artela node
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/.artelad
ExecStart=$(which artelad) start --home $HOME/.artelad
Restart=on-failure
RestartSec=5
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
Run from snapshot
sudo systemctl stop artelad
cp $HOME/.artelad/data/priv_validator_state.json $HOME/.artelad/priv_validator_state.json.backup
rm -rf $HOME/.artelad/data $HOME/.artelad/wasmPath
curl https://testnet-files.itrocket.net/artela/snap_artela.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.artelad
mv $HOME/.artelad/priv_validator_state.json.backup $HOME/.artelad/data/priv_validator_state.json
sudo systemctl enable artelad && sudo systemctl restart artelad && sudo journalctl -u artelad -f
Wait fo full sync (output "false")
artelad status 2>&1 | jq
Create or recover wallet
!!! BACKUP YOUR SEED PHRASE !!!
artelad keys add $WALLET
OR
artelad keys add $WALLET --recover
Get tokens from faucet 🆓
every 12 hours or use discord channel (every 6 hours)
https://crypton-faucet.vercel.app/
Create Validator
artelad tx staking create-validator \
--amount 1000000uart \
--from $ARTELA_WALLET \
--commission-rate 0.1 \
--commission-max-rate 0.2 \
--commission-max-change-rate 0.01 \
--min-self-delegation 1 \
--pubkey $(artelad tendermint show-validator) \
--moniker "$ARTELA_MONIKER" \
--identity "" \
--website "" \
--details "" \
--chain-id artela_11822-1 \
--gas auto --gas-adjustment 1.5 \
-y
!!! BACKUP YOUR priv_validator_key.json !!!
Useful commands ⚙️
node info
artelad status 2>&1 | jq
logs
sudo journalctl -u artelad -f
start service
sudo systemctl start wardend
stop service
sudo systemctl stop artelad
restart service
sudo systemctl start artelad
enable service
sudo systemctl enable artelad
disable service
sudo systemctl disable artelad
Check wallets list
artelad keys list
Delete wallet
artelad keys delete <wallet-name>
Check Balance
artelad q bank balances $ARTELA_WALLET
Withdraw all rewards
artelad tx distribution withdraw-all-rewards --from $ARTELA_WALLET --chain-id artela_11822-1 --gas auto --gas-adjustment 1.5
Withdraw rewards and commission from your validator
artelad tx distribution withdraw-rewards $(artelad keys show $ARTELA_WALLET --bech val -a) --from $ARTELA_WALLET --commission --chain-id artela_11822-1 --gas auto --gas-adjustment 1.5 -y
Check your balance
artelad query bank balances $ARTELA_WALLET
Delegate to Yourself
artelad tx staking delegate $(artelad keys show $ARTELA_WALLET --bech val -a) 1000000uart --from $ARTELA_WALLET --chain-id artela_11822-1 --gas auto --gas-adjustment 1.5 -y
Delegate
artelad tx staking delegate <TO_VALOPER_ADDRESS> 1000000uart --from $ARTELA_WALLET --chain-id artela_11822-1 --gas auto --gas-adjustment 1.5 -y
Redelegate Stake to Another Validator
artelad tx staking redelegate $(artelad keys show $ARTELA_WALLET --bech val -a) <TO_VALOPER_ADDRESS> 1000000uart --from $ARTELA_WALLET --chain-id artela_11822-1 --gas auto --gas-adjustment 1.5 -y
Unbond
artelad tx staking unbond $(artelad keys show $ARTELA_WALLET --bech val -a) 1000000uart --from $ARTELA_WALLET --chain-id artela_11822-1 --gas auto --gas-adjustment 1.5 -y
Transfer Funds
artelad tx bank send $ARTELA_WALLET <TO_WALLET_ADDRESS> 1000000uart --gas auto --gas-adjustment 1.5 -y
Validator Details
artelad q staking validator $(artelad keys show $ARTELA_WALLET --bech val -a)
Jailing info
artelad q slashing signing-info $(artelad tendermint show-validator)
Slashing parameters
artelad q slashing params
Unjail validator
artelad tx slashing unjail --from $ARTELA_WALLET --chain-id artela_11822-1 --gas auto --gas-adjustment 1.5 -y
Delete node 🗑️
sudo systemctl stop artelad
sudo systemctl disable artelad
sudo rm -rf /etc/systemd/system/artelad.service
sudo rm $(which artelad)
sudo rm -rf $HOME/.artelad
sed -i "/ARTELA_/d" $HOME/.bash_profile
Last updated