Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2.2 KiB
title |
---|
Upgrading to a new release |
Preparing
The release page contains a changelog, and below it, upgrade instructions. Read and understand the release instructions.
Some tasks (like database migrations) can take a while, so we advise you to run commands inside a tmux
or screen
.
Backup
Always make sure your database and config
folder are properly backuped before performing upgrades.
Unless stated otherwise in the release notes, the following steps are enough to upgrade Mobilizon.
Steps
Fetch latest code
Switch to the mobilizon
user:
sudo -i -u mobilizon
And navigate to the Mobilizon root directory:
cd /home/mobilizon/live
Fetch the latest tags
git fetch --tags
And checkout the tag you want to switch to. For instance, if I want to upgrade to version v1.1
:
git checkout v1.1
Fetch new dependencies
Fetch new and/or updated Elixir and NodeJS dependencies
MIX_ENV=prod mix deps.get
cd js
yarn install
Rebuild Mobilizon's front-end
!!! warning
Building front-end can consume up to 2048MB of RAM by default. If it's too much or not sufficient for your setup, you can adjust the maximum memory used by prefixing the command with the following option:
NODE_BUILD_MEMORY=1024
yarn run build
cd ../
Recompile Mobilizon
MIX_ENV=prod mix compile
Let's switch back to your regular user.
Stop running Mobilizon processes
sudo systemctl stop mobilizon
Perform database migrations
Go back to the mobilizon
user.
sudo -i -u mobilizon
cd live
MIX_ENV=prod mix ecto.migrate
Restart Mobilizon
Let's switch back one last time to your regular user.
sudo systemctl restart mobilizon
You can follow the Mobilizon logs to check that everything works properly.
sudo journalctl -u mobilizon -f
That’s all! You’re running the new version of Mobilizon now.
If you have issues after upgrading, try reviewing upgrade steps and release notes. Then feel free to contact us or file an issue on our Gitlab