Upgrade Notes 24.04-24.08

Before starting the update

Perform a database backup before the update begins!

Update algorithm

  1. Complete shutdown of all Webitel services
  2. Update Webitel applications to v24.04
  3. Migrate the database from Webitel v24.04 to v24.08
  4. Update nginx configuration
  5. Restart all services after updating to Webitel v24.08

Fully stop all Webitel services:

systemctl stop webitel-api webitel-app webitel-uac messages-bot messages-srv \
  engine call_center storage flow_manager rabbitmq-server webitel-logger consul \
  freeswitch ngcp-rtpengine-daemon opensips grafana-server nginx

Updating Webitel applications to v24.08.

sed -i 's/24.04-releases/24.08-releases/g' /etc/apt/sources.list.d/*
	
echo "deb https://deb.sipwise.com/spce/mr12.4.1 bookworm main" > /etc/apt/sources.list.d/rtpengine.list

apt update
apt upgrade
    
apt install --reinstall linux-headers-`uname -r` ngcp-rtpengine-daemon ngcp-rtpengine-kernel-dkms

Migrating the database from Webitel version v24.04 to v24.08

su postgres
cd ~
psql webitel -qxc "ALTER DATABASE webitel SET timescaledb.restoring='on';"
psql -1 -f /usr/share/postgresql/15/webitel/migration/24.04-24.08.sql webitel
psql webitel -qxc "ALTER DATABASE webitel SET timescaledb.restoring='off';"
exit

Cleaning up old packages:

apt --purge autoremove

Update nginx configuration:

sudo sed -i '/location \/\ {/i \
\    location \/ringtones {\
\        add_header '\''Access-Control-Allow-Origin'\'' *;\
\        alias \/opt\/www\/ringtones;\
\        expires -1;\
\    }\n' /etc/nginx/sites-enabled/default 
 
nginx -t

Restarting all services after updating to Webitel v24.08

systemctl restart consul
systemctl restart postgresql
systemctl restart rabbitmq-server

systemctl restart webitel-app webitel-uac webitel-api engine \
  messages-srv flow_manager messages-bot call_center storage webitel-logger \
  freeswitch ngcp-rtpengine-daemon opensips grafana-server nginx