This document describes a process of joining a testnet or a mainnet as a validator.
Full documentation is hosted at learning.ux.xyz. However, it may not be up-to-date.
You need 2 binaries to run a validator: umeed and price-feeder.
Make sure you run the right binary for the testnet or the mainnet. Consult the chain upgrades on mainnet and testnet.
You can get a binary by:
-
Build yourself and follow the latest Release Notes.
-
If you build the binary on a different OS than your validator OS, then you need to copy
libwasmvm:scp $GOPATH/pkg/mod/github.com/!cosm!wasm/wasmvm@<version>/internal/api/libwasmvm.$(uname -m).so running_os:/<lib/path>
NOTE: use the correct
wasmvmversion, according to the latest Release Notes or the compatibility matrix. -
Download the right binary build. The binary build is compatible with the latest Ubuntu LTS x86-64. You MUST also copy the
libwasmvm(See note in 2. about libwasmvm version):wget https://raw.githubusercontent.com/CosmWasm/wasmvm/<version>/internal/api/libwasmvm.$(uname -m).so -O /lib/libwasmvm.$(uname -m).so
-
Use our released docker umeed container.
To test if the libwasm is linked correctly, run umeed version.
We are using Ojo Price Feeder. Please follow the instructions. Make sure you use the latest release with the umee/ prefix (eg: umee/v2.4.0).
NOTE: for self building and configuration examples, you MUST use the umee branch.
- Copy the
price-feeder.toml. - For the provider config you can use our latest umee-provider-config directory as is.
- Depending where you run your validator node, certain locations may block some endpoints. Make sure you read through the comments in the config files.
- Make sure you follow our announcements and update in Discord: canon-4 announcements for the testnet and validator-announcements for the mainnet.
-
Update the
app.toml,client.tomlandconfig.tomlbased on your preference. You MUST set non-zero min gas prices inapp.toml. Queryumeed q ugov min-gas-priceto see what is the minimum acceptable value:# your app.toml file minimum-gas-prices = "0.1uumee"
Before joining the mainnet you should join a testnet!
-
Make sure you can run
umeedandprice-feederlocally. -
Join the Discord server. Make sure you are in the Testnet group.
-
Follow the state sync canon-4 instructions. Make sure you use the latest version.
-
You can use the following peers in your
config.toml:persistent_peers = "ee7d691781717cbd1bf6f965dc45aad19c7af05f@canon-4.network.umee.cc:10000,dfd1d83b668ff2e59dc1d601a4990d1bd95044ba@canon-4.network.umee.cc:10001"
-
Using discord, ping one of the UX Team members to send you testnet
uumee. -
Once your node validator is set up (and you did self delegation), ping again UX Team members and send your validator address. We will do a delegation.
-
Make sure your Price Feeder is running correctly. If your testnet window misses are above 50% then something is wrong. Look for a help on Discord.
Here are our testnet public endpoints:
- Make sure you firstly tested your setup on Testnet.
- Use one of the community snapshots:
- Buy
uumeeto self delegate. - Make sure your Price Feeder is running correctly. If your mainnet window misses are above 50% then something is wrong. Look for a help on Discord.
We recommend to use Cosmovisor for mainnet nodes.