Upgrade
Upgrade Nolus safely and confirm the node resumes syncing.
Mainnet · pirin-1
This procedure uses the direct nolusd.service created by our installation guide. If your service uses Cosmovisor, stage the binary under the exact on-chain upgrade plan name instead of replacing its symlink.
Check the service
Confirm its executable and home before changing anything.
systemctl cat nolusdCheck the upgrade plan
Read any scheduled on-chain upgrade.
nolusd query upgrade plan -o jsonPrepare the new binary
Use the binary download/build steps in Installation, but stage the result as $HOME/nolusd.next and do not install it over the running executable yet. Select the release announced for pirin-1.
Create an upgrade checkout
Use a new directory and the intended release tag.
git clone --branch v0.8.4 --depth 1 https://github.com/nolus-protocol/nolus-core.git "$HOME/nolus-upgrade-v0.8.4"Open the checkout
Build from the release source.
Build into a staging directory
GOBIN keeps the service executable unchanged.
Stage the result
Use a predictable path for the replacement.
If the release changes WasmVM, install its matching runtime library using the module lookup in Installation and run sudo ldconfig before starting the new binary.
Make executable
Allow checking the staged binary.
Check the staged version
Resolve missing libraries or a wrong release before downtime.
Stop at the correct time
Stop the one active signer before switching binaries.
Back up configuration and signing state
Keep the signing state from this stopped node. Store a full stopped database backup as well if the release requires one.
Keep the previous binary
Retain a copy for diagnostics; database migrations may prevent a simple binary rollback.
Replace the binary
Install the staged executable.
Start
Start the node with the upgraded binary.
Inspect logs
Check for migration errors and advancing heights.
Confirm sync
Check height and catching_up after the node recovers.
Last updated