feat(api): replace uwsgi with gunicorn (#1785)

Related to #1719

BREAKING: The uwsgi packages and configuration files (`/etc/airtime/libretime-api.ini`) should be removed from the system.
This commit is contained in:
Jonas L 2022-04-25 16:09:19 +02:00 committed by GitHub
parent e320ce204e
commit 41df76eed0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 24 additions and 21 deletions

View File

@ -3,13 +3,18 @@ Description=LibreTime API Service
[Service]
Type=notify
NotifyAccess=all
KillSignal=SIGQUIT
KillMode=mixed
PrivateTmp=true
Environment=LIBRETIME_LOG_FILEPATH=/var/log/libretime/api.log
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/airtime/airtime.conf
ExecStart=/usr/bin/uwsgi /etc/airtime/libretime-api.ini
ExecStart=/usr/bin/gunicorn \
--workers 4 \
--log-file - \
--bind 127.0.0.1:8081 \
libretime_api.wsgi
ExecReload=/bin/kill -s HUP $MAINPID
User=libretime-api
Group=libretime-api
Restart=always

View File

@ -1,10 +0,0 @@
[uwsgi]
module = libretime_api.wsgi
master = true
plugin = python3
processes = 10
vacuum = true
http-socket = :8081
uid = WEB_USER
gid = WEB_USER

View File

@ -2,10 +2,8 @@
[python]
python3 = buster, bullseye, bionic, focal
python3-pip = buster, bullseye, bionic, focal
[django]
uwsgi = buster, bullseye, bionic, focal
uwsgi-plugin-python3 = buster, bullseye, bionic, focal
gunicorn = buster, bullseye, bionic, focal
python3-gunicorn = buster, bullseye, bionic, focal
[psycopg2]
# See https://www.psycopg.org/docs/install.html#install-from-source

View File

@ -32,6 +32,20 @@ sudo rm -f /etc/httpd/conf.d/airtime*
sudo rm -f /etc/php.d/airtime.ini
```
### Replaced uWSGI with Gunicorn
[uWSGI](https://uwsgi-docs.readthedocs.io) was replaced by [Gunicorn](https://gunicorn.org/), the packages and configuration file should be removed from the system:
```bash
# Remove the configuration file
sudo rm -f /etc/airtime/libretime-api.ini
# Remove the packages
sudo apt purge \
uwsgi \
uwsgi-plugin-python3
```
## :warning: Known issues
The following issues may need a workaround for the time being. Please search the [issues](https://github.com/libretime/libretime/issues) before reporting problems not listed below.

View File

@ -1046,10 +1046,6 @@ verbose "...Done"
verbose "\n * Installing API..."
loudCmd "$pip_install ${AIRTIMEROOT}/api[prod]"
systemInitInstall libretime-api "$web_user"
mkdir -p /etc/airtime
sed -e "s@WEB_USER@${web_user}@g" \
-e "s@WEB_ROOT@${web_root}@g" \
"${AIRTIMEROOT}/api/install/uwsgi/libretime-api.ini" > /etc/airtime/libretime-api.ini
verbose "...Done"
verbose "\n * Setting permissions on /var/log/libretime..."