⚙️ Installation

🛠️ Hardware Requirements

Node TypeCPURAMStorage

Full (Recommended)

8v CPU

32 GB

300 GB SSD

Additional requirements

Chain IDVersion tagBinary NameBinary Home

buenavista-1

v0.4.2

wardend

$HOME/.warden

⚡ Automatic installation

bash <(curl -s https://raw.githubusercontent.com/UnityNodes/scripts/main/warden/install-warden.sh)

📝 Manual installation

Installation packeges and dependencies

# Install dependencies for building from source
sudo apt update
sudo apt install -y lz4 jq make git gcc build-essential curl chrony unzip gzip snapd tmux bc

# Install Go
sudo rm -rf /usr/local/go
curl -L https://go.dev/dl/go1.21.6.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

Install node

Replace "NODE_MONIKER" with your name moniker

# Clone project repository
cd $HOME
rm -rf wardenprotocol
git clone https://github.com/warden-protocol/wardenprotocol
cd wardenprotocol
git checkout v0.4.2
make install

# Set node CLI configuration
wardend config set client chain-id buenavista-1
wardend config set client keyring-backend test
wardend config set client node tcp://localhost:26657

# Initialize the node
wardend init "$NODE_MONIKER" --chain-id buenavista-1

# Download addrbook,genesis files
curl -L https://buenavista-genesis.s3.eu-west-1.amazonaws.com/genesis.json.tar.xz | tar xJf -
mv genesis.json $HOME/.warden/config/genesis.json
curl -L https://snapshots-testnet.unitynodes.com/warden-testnet/addrbook.json > $HOME/.warden/config/addrbook.json

# Set seeds
sed -i -e 's|^seeds *=.*|seeds = "ddb4d92ab6eba8363bab2f3a0d7fa7a970ae437f@sentry-1.buenavista.wardenprotocol.org:26656,c717995fd56dcf0056ed835e489788af4ffd8fe8@sentry-2.buenavista.wardenprotocol.org:26656,e1c61de5d437f35a715ac94b88ec62c482edc166@sentry-3.buenavista.wardenprotocol.org:26656"|' $HOME/.warden/config/config.toml

# Set peers
PEERS="c6ad84f94de53a518d06b7c7fde47e23b150e746@195.26.246.192:11256,3f472746f46493309650e5a033076689996c8881@65.109.68.190:17859,b654417a94f758131ae034a3a203b72999a83110@37.60.243.110:26656,e850365a8232650623f30356c77583939b896327@116.202.217.20:26656,848098ba324f869e07174a875a0c47228eb67a12@198.27.70.173:26656,00c0b45d650def885fcbcc0f86ca515eceede537@152.53.18.245:19656,8c3787e178f7595398644c5e2ff9c01111a1967e@194.35.120.208:11256,667f367caf1af9feae5c6dffeb2b03f46897db3e@94.72.116.233:11256,479221690748069edb536e8b429826ed074cc4e8@38.242.130.54:18656,f03f1b5958801cdbe8dd3d370ea631d60a6286a7@65.109.83.40:27356,ea4da5645e680acbf27b5e2221b3447bf7fc6aa8@193.22.147.189:26656,b9712aefca195e7e93d7923c2f6edb51c9b9d0ba@37.252.186.116:4000,6789814169a28f8c5260cd2a59774ffc9b3b5d84@109.199.98.31:26656,6fbb0a0451f8f7384dda6c74455886ba4cb24359@158.220.110.98:26656,db6947c73751a64b81360e2487c85c54ec0c81a5@81.17.97.89:656"
sed -i "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.warden/config/config.toml

# Set minimum gas price
sed -i -e 's|^minimum-gas-prices *=.*|minimum-gas-prices = "0.01uward"|' $HOME/.warden/config/app.toml


# Set pruning
sed -i \
  -e 's|^pruning *=.*|pruning = "custom"|' \
  -e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
  -e 's|^pruning-interval *=.*|pruning-interval = "17"|' \
  $HOME/.warden/config/app.toml

# Download latest chain data snapshot
curl https://snapshots-testnet.unitynodes.com/warden-testnet/warden-testnet-latest.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.warden

# Create a service
sudo tee /etc/systemd/system/wardend.service > /dev/null << EOF
[Unit]
Description=Warden Protocol node service
After=network-online.target
[Service]
User=$USER
ExecStart=$(which wardend) start
Restart=on-failure
RestartSec=10
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable wardend.service

# Start the service and check the logs
sudo systemctl start wardend.service
sudo journalctl -u wardend.service -f -o cat

📝 Create Validator

1️⃣ Create wallet

wardend keys add wallet

Save all information after entering the command, without this you will not be able to restore data to the wallet. SAVE SEED PHRASE (12 words). ▶️ Example: address: warden1vcxv7xc6hjf1212340chefqwny7q55judnpsk # Your wallet name: wallet pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"AqgSEuNIGf5137XYrYEfwKMKrKPM9p3hunnl1XNEGf"}' type: local

Important write this mnemonic phrase in a safe place. It is the only way to recover your account if you ever forget your password.

retreat easily doctor update virtual ability where motor nose where trial food farm have marine knock picture bag loud ride bleak invite miss radio

2️⃣ Request tokens to your address in faucet's discord channel

Join the server - https://discord.com/invite/wardenprotocol

Request tokens to your address in faucet's discord channel

In the chat, write $request add ress

$request address

3️⃣ Show priv_validator_key.json


cat $HOME/.warden/config/priv_validator_key.json
SAVE YOUR PRIVATE KEY AFTER ENTERING THE COMMAND

4️⃣ Create validator

Create a validator.json file

touch $HOME/.warden/config/validator.json

To find out your pubkey, use the command (Save your Pubkey)

wardend comet show-validator

Output Example:

The output will be similar to this (with a different key):

{"@type":"/cosmos.crypto.ed25519.PubKey","key":"lR1d7YBVK5jYijOfWVKRFoWCsS4dg3kagT7LB9GnG8I="}

Open a validator.json file

nano $HOME/.warden/config/validator.json

Paste this into the open validator.json file, pre-replacing all values ​​that start with $ (you can do it in any convenient editor, not directly in nano mode)

{
        "pubkey": {$PUBKEY},
        "amount": "1000000uward",
        "moniker": "$MONIKER",
        "identity": "$IDENTITY",
        "website": "",
        "security": "$EMAIL",
        "details": "$DETAILS",
        "commission-rate": "0.1",
        "commission-max-rate": "0.2",
        "commission-max-change-rate": "0.01",
        "min-self-delegation": "1"
}

Replace the following values with your own: WALLET - usually it's 'wallet', or your wallet's name. MONIKER - any convenient name for your validator, displayed in the explorer. IDENTITY - validator's avatar, displayed in the explorer. Create a KeyBase ID following the instructions or leave it empty, and it will default to a standard one. DETAILS - details about your validator, also displayed in the explorer.

WEBSITE - your website/github/twitter, etc., if you don't want to specify anything - leave it blank

Replace all necessary values indicated above with the $ sign to successfully create your validator. Example:

{
        "pubkey": {"@type":"/cosmos.crypto.ed25519.PubKey","key":"lR1d7YBVK5jYijOfWVKRFoWCsS4123dg3kagT7LB9GnG8I="},
        "amount": "1000000uward",
        "moniker": "Oliver",
        "identity": "", #if you have your identifier, replace it, or leave it blank
        "website": "", #if you have your website, replace it, or leave it blank
        "security": "qwerty@gmail.com",
        "details": "A reliable validator", 
        "commission-rate": "0.1",
        "commission-max-rate": "0.2",
        "commission-max-change-rate": "0.01",
        "min-self-delegation": "1"
}

After creating the validator.json and entering all the necessary information, as well as provided that there are tokens in the wallet, run the create command:

wardend tx staking create-validator $HOME/.warden/config/validator.json \
--chain-id buenavista-1 \
--gas-adjustment="1.5" \
--fees 2000uward \
--from wallet

Last updated