Oracle

First You Need setup this

# Set Vars
WARDEN_GRPC=$(grep -A 10 '\[grpc\]' $HOME/.warden/config/app.toml | grep 'address' | grep -oP '(?<=address = ")[^"]+')
WARDEN_ORACLE_PORT=8050

# Update app.toml with new config
tee -a $HOME/.warden/config/app.toml <<EOF
[oracle]

enabled = "true"
oracle_address = "localhost:${WARDEN_ORACLE_PORT}"
client_timeout = "2s"
metrics_enabled = "true"
EOF

#restart
sudo systemctl restart wardend

Manual Installation

# Download a slinky binary
cd && curl -Ls https://github.com/skip-mev/slinky/releases/download/v1.0.8/slinky-1.0.8-linux-amd64.tar.gz > slinky-1.0.8-linux-amd64.tar.gz
tar -xzf slinky-1.0.8-linux-amd64.tar.gz
sudo mv slinky-1.0.8-linux-amd64/slinky $HOME/go/bin/slinky
rm slinky-1.0.8-linux-amd64.tar.gz


# Create a systemd service for slinky
sudo tee /etc/systemd/system/warden-slinky.service > /dev/null << EOF
[Unit]
Description=Slinky for Warden Protocol service
After=network-online.target
[Service]
User=$USER
ExecStart=$(which slinky) --market-map-endpoint $WARDEN_GRPC --log-file $HOME/sidecar.log --port $WARDEN_ORACLE_PORT 
Restart=on-failure
RestartSec=10
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

# Enable and Start Service
sudo systemctl daemon-reload && sudo systemctl enable warden-slinky && sudo systemctl start warden-slinky && sudo journalctl -u warden-slinky -f --no-hostname -o cat

Auto Installation

If you want to use this, make sure you do the setup above first

wget https://snapshot.syanodes.my.id/auto/testnet/warden_slinky_auto && chmod +x warden_slinky_auto && ./warden_slinky_auto

Check Verify Connect

curl 'http://localhost:8050/slinky/oracle/v1/prices' | jq .

Delete Slinky

sudo systemctl stop warden-slinky && sudo systemctl disable warden-slinky && sudo rm /etc/systemd/system/warden-slinky.service && sudo rm $HOME/go/bin/slinky

Last updated