Ojo - Oracle Network - Testnet
Ojo is a decentralized security-first oracle network built to securly support ecosystem-native assets. Ojo sources price data from a diverse catalog of on and off-chain sources and use advanced security mechanisms to guarantee the integrity of the data it provides. The advantages of this network are: accessible, reliable and trust-less.
It is compatible with any chain IBC enabled chain and EVMs. Ojo collects data from on-chain and off-chain reliable sources and all validators vote on vote on the prices used in Ojo’s price feeds making sure prices are reliable.
Node setup for Ojo Network
Update the system and install the essentials:
$ sudo apt update && sudo apt full-upgrade -y && apt install build-essential
$ sudo apt install vim /or apt install nano
$ sudo apt install entr jq make git ufw wget
Install GO and Cosmovisor
$ sudo rm -r /usr/local/go/
$ wget https://golang.org/dl/go1.19.12.-amd64.tar.gz
$ sudo tar -C /usr/local -xzf go1.19.12.-amd64.tar.gz
$ rm go1.19.12.-amd64.tar.gz
$ echo export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin >> $HOME/.bash_profile
$ source $HOME/.bash_profile
# Install cosmovisor
$ go install cosmossdk.io/tools/cosmovisor/cmd/[email protected]
$ sudo mv /usr/local/
Clone the repository and install node binary
$ cd $HOME
$ git clone https://github.com/ojo-network/ojo.git
$ cd ojo
$ git checkout v0.1.2* always doublecheck from the official team for the right version
$ make install
Set up cosmovisor
$ mkdir -p $HOME/.ojo/cosmovisor/genesis/bin
$ mkdir -p $HOME/.ojo/cosmovisor/upgrades
$ mv $HOME/go/bin/ojod $HOME/.ojo/cosmovisor/genesis/bin/
$ sudo ln -s $HOME/.ojo/cosmovisor/genesis $HOME/.ojo/cosmovisor/current -f
$ sudo ln -s $HOME/.ojo/cosmovisor/current/bin/ojod /usr/local/bin/ojod -f
# Create service file
sudo tee /etc/systemd/system/ojod.service > /dev/null <<EOF
[Unit]
Description=”ojo node”
After=network-online.target
[Service]
User=$USER
ExecStart=$(which cosmovisor) run start
Restart=on-failure
RestartSec=5
LimitNOFILE=65535
WorkingDirectory=$HOME/.ojo
Environment=”DAEMON_NAME=ojod”
Environment=”DAEMON_HOME=$HOME/.ojo”
Environment=”DAEMON_ALLOW_DOWNLOAD_BINARIES=false”
Environment=”DAEMON_RESTART_AFTER_UPGRADE=true”
Environment=”UNSAFE_SKIP_BACKUP=true”
Environment=”PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:$HOME/.ojo/cosmovisor/current/bin”
[Install]
WantedBy=multi-user.target
EOF
$ sudo systemctl daemon-reload
$ sudo systemctl enable ojod
Set up node
Please when using this guide replace “YOUR_MONIKER” with name for your node.
$ ojod init YOUR_MONIKER –chain-id ojo-devnet
# Get address book and genesis.json
$ wget -O ~/.ojo/config/genesis.json https://rpc.devnet-n0.ojo-devnet.node.ojo.network/genesis
#Set minimum gas prices
sed -i -e “s|^minimum-gas-prices *=.*|minimum-gas-prices = \”0uojo\”|” $HOME/.ojo/config/app.toml
# You can get address book from any validator (you only need 1 address book)
Polkachu
$ wget -O addrbook.json https://snapshots.polkachu.com/testnet-addrbook/ojo/addrbook.json –inet4-only
mv addrbook.json ~/.ojo/config or
KJ Nodes
$ curl -Ls curl -Ls https://snapshots.kjnodes.com/ojo-testnet/addrbook.json > $HOME/.ojo/config/addrbook.json or
NodeJumper
$ curl -s https://snapshots-testnet.nodejumper.io/ojo-testnet/addrbook.json > $HOME/.ojo/config/addrbook.json
# Or find seed from some validator that offers seed to bootstrap your node.
Use state sync or snapshot to catch up
Use snapshot or state sync to catch up. * If you plan to use state sync make sure that validator that offers these services offers wasm file.
https://polkachu.com/testnets/ojo/snapshots
Start the node
$ sudo systemctl start ojod && sudo journalctl -fu ojod -o cat
Validator setup for Ojo Network
Create keys and validator
#Create the wallet ( replace #keyname with whatever name you want)
$ ojod keys add #keyname
#Now create the validator
$ ojod tx staking create-validator \
‐‐amount=1000000uojo \
‐‐pubkey=$(ojod tendermint show-validator) \
‐‐moniker=node name \
‐‐chain-id=ojo-devnet\
‐‐commission-rate=”0.05″ \
‐‐commission-max-rate=”0.20″ \
‐‐commission-max-change-rate=”0.01″ \
‐‐min-self-delegation=”1″ \
‐‐gas=”auto” \
‐‐gas-prices=”0uojo” \
‐‐from=#keyname \
‐‐gas-adjustment 1.5
‐‐identity keybase id number \
‐‐details “write info about your validators for example what type of service you offer etc.” \
‐‐website “https://cogwheel.zone for example”