> For the complete documentation index, see [llms.txt](https://docs.liquidapps.io/liquidapps-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.liquidapps.io/liquidapps-documentation/dapp-service-providers/dsps/dsp-maintenance/upgrade-dsp-node.md).

# Upgrade DSP Node

For all new releases, please test on the Kylin testnet for at least one week before deploying to a production environment.

Link: [sample-config.toml](https://raw.githubusercontent.com/liquidapps-io/zeus-sdk/master/boxes/groups/dapp-network/dapp-services-deploy/sample-config.toml)

```bash
# as root
sudo su -
systemctl stop ipfs
systemctl stop nodeos
# if changes to sample-config.toml syntax, update
nano ~/.dsp/config.toml
# use pm2 process manager to kill all processes and delete them
pm2 kill
pm2 del all
# uninstall
npm uninstall -g @liquidapps/dsp
exit

# as USER
sudo chown ubuntu:ubuntu /home/ubuntu/.pm2/rpc.sock /home/ubuntu/.pm2/pub.sock
npm uninstall -g @liquidapps/dsp

sudo su -
npm install -g @liquidapps/dsp --unsafe-perm=true
# Ensure no new updates to the `sample-config.toml` file are present, if so, update your config.toml accordingly.
sudo find / -name sample-config.toml
# nano <PATH>
setup-dsp
systemctl start nodeos
systemctl start ipfs
exit
```

If a DSP is not updating properly, you may try `pm2 restart all` to restart all processes.

### Script for updating:

```
#! /bin/bash
systemctl stop dsp
pm2 kill
pm2 del all
npm uninstall -g @liquidapps/dsp
npm i -g @liquidapps/dsp --unsafe-perm=true
cd $(readlink -f `which setup-dsp` | xargs dirname)
```
