Installation

Cross Finance Testnet guide

Preparing the server

sudo apt update && sudo apt upgrade -y
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y

GO 1.21.3

ver="1.21.3" &&
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" >> $HOME/.bash_profile &&
source $HOME/.bash_profile &&
go version

Build

cd $HOME
wget https://github.com/crossfichain/crossfi-node/releases/download/v0.3.0-prebuild3/crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz && tar -xf crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz
tar -xvf crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz
chmod +x $HOME/bin/crossfid
mv $HOME/bin/crossfid $HOME/go/bin
git clone https://github.com/crossfichain/testnet.git
rm -rf crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz $HOME/bin
crossfid version --long
  • version: 0.3.0-prebuild3

  • commit: 2a79e36277b951e733f905ec0f955335aa2fb493

crossfid config chain-id crossfi-evm-testnet-1
crossfid config keyring-backend os

Create/recover wallet

crossfid keys add <walletname>
crossfid keys add <walletname> --recover

Download Genesis and addrbook

wget -O $HOME/.mineplex-chain/config/genesis.json https://testnet-files.itrocket.net/crossfi/genesis.json
wget -O $HOME/.mineplex-chain/config/addrbook.json https://testnet-files.itrocket.net/crossfi/addrbook.json

Setup the minimum gas price and Peers

sed -i 's|minimum-gas-prices =.*|minimum-gas-prices = "10000000000000mpx"|g' $HOME/.mineplex-chain/config/app.toml
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.mineplex-chain/config/config.toml
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $HOME/.mineplex-chain/config/config.toml
SEEDS="dd83e3c7c4e783f8a46dbb010ec8853135d29df0@crossfi-testnet-seed.itrocket.net:36656"
PEERS="66bdf53ec0c2ceeefd9a4c29d7f7926e136f114a@crossfi-testnet-peer.itrocket.net:36656,[email protected]:36656,[email protected]:23656,[email protected]:26656,[email protected]:46656,[email protected]:26056,[email protected]:36656,[email protected]:28316,[email protected]:26656,[email protected]:60856,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26056,[email protected]:26656,[email protected]:21656,[email protected]:12656,[email protected]:26656,[email protected]:11656,[email protected]:26656,[email protected]:26656,[email protected]:36656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26056,[email protected]:26656,[email protected]:11656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:11456,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:11656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:30656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:16656,[email protected]:26656,[email protected]:26656,[email protected]:11656,[email protected]:20656,[email protected]:26656,[email protected]:26656,[email protected]:60556,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:32656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26056,[email protected]:44656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:22656,[email protected]:26056,4fdb9a8014091c97f50524fcdf63740dbe6acb80@[2a03:cfc0:8000:13::b910:277f]:13256,[email protected]:26656,[email protected]:26656,[email protected]:26656"
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.mineplex-chain/config/config.toml

Pruning

sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" $HOME/.mineplex-chain/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $HOME/.mineplex-chain/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"50\"/" $HOME/.mineplex-chain/config/app.toml

Create a service file

sudo tee /etc/systemd/system/crossfid.service > /dev/null <<EOF
[Unit]
Description=Crossfi node
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/.mineplex-chain
ExecStart=$(which crossfid) start --home $HOME/.mineplex-chain
Restart=on-failure
RestartSec=5
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

Start

sudo systemctl daemon-reload
sudo systemctl enable crossfid
sudo systemctl restart crossfid && sudo journalctl -u crossfid -f

Create validator

crossfid tx staking create-validator
--amount 1000000mpx
--from <walletName>
--commission-rate 0.1
--commission-max-rate 0.2
--commission-max-change-rate 0.01
--min-self-delegation 1
--pubkey $(crossfid tendermint show-validator)
--moniker "YOUR_MONIKER_NAME"
--identity "YOUR_KEYBASE_ID"
--details "YOUR_DETAILS"
--chain-id crossfi-evm-testnet-1
--gas auto --gas-adjustment 1.5 --gas-prices 10000000000000mpx
-y

Delete node

sudo systemctl stop crossfid &&
sudo systemctl disable crossfid &&
rm /etc/systemd/system/crossfid.service &&
sudo systemctl daemon-reload &&
cd $HOME &&
rm -rf crossfi &&
rm -rf .mineplex-chain &&
rm -rf $(which crossfid)

Last updated