Upgrade Notes 23.07-23.09

backup

Perform a database backup before starting the update!

Update Algorithm:

  1. Complete shutdown of all webitel services.
  2. Update Debian Linux and upgrade Webitel applications to v23.09.
  3. Installation of new Webitel applications v23.09.
  4. Database migration from Webitel v23.07 to v23.09.
  5. Restart of all services after updating to Webitel v23.09.

Full shutdown of all Webitel services.

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

Updating Debian Linux and upgrading Webitel applications to v23.09. You will need to request access to the Webitel repositories from your manager.

WBTU=webitel_repo_user
WBTP=webitel_repo_password

wget --http-user=$WBTU --http-password=$WBTP -O /usr/share/keyrings/webitel-repo.gpg http://deb.webitel.com/webitel-repo.gpg
echo "machine http://deb.webitel.com login $WBTU password $WBTP" > /etc/apt/auth.conf.d/webitel.conf
echo "deb [signed-by=/usr/share/keyrings/webitel-repo.gpg] http://deb.webitel.com/debian `lsb_release -sc` main" > /etc/apt/sources.list.d/webitel.list
echo "deb [signed-by=/usr/share/keyrings/webitel-repo.gpg] http://deb.webitel.com/debian `lsb_release -sc` 23.09-releases" >> /etc/apt/sources.list.d/webitel.list

apt update && apt upgrade

Installation of new Webitel applications v23.09.

apt install webitel-crm webitel-logger

cp /opt/webitel/etc/systemd/system/webitel-logger.service /etc/systemd/system/

systemctl enable webitel-logger

Database migration from Webitel v23.07 to v23.09.

su postgres
cd ~
psql webitel -qxc "ALTER EXTENSION timescaledb UPDATE;"
psql -1 -f /usr/share/postgresql/15/webitel/migration/23.07-23.09.sql webitel
exit

Add a new "crm" section to the Nginx configuration file:

sed -i '/.*location \/flow-diagram.*/i location \/crm {\n\talias \/opt\/www\/crm;\n\ttry_files $uri $uri\/ \/index.html last;\n\texpires -1;\n}\n' /etc/nginx/sites-enabled/default

nginx -t

Restart all services after updating to Webitel v23.09.

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