diff --git a/install b/install index 5bf51fbb8..d37f7bd41 100755 --- a/install +++ b/install @@ -93,6 +93,12 @@ skip_postgres=0 skip_rabbitmq=0 default_value="Y" +# +mkdir_and_chown() { + mkdir -p "$2" + chown -R "$1" "$2" +} + function verbose() { if [[ ${_v} -eq 1 ]]; then echo -e "$@" @@ -1027,12 +1033,17 @@ if [ ! -d /var/log/airtime ]; then verbose "\n * Creating /var/log/airtime" loudCmd "mkdir -p /var/log/airtime" + mkdir_and_chown "$web_user:$web_user" "/var/log/libretime" verbose "\n * Copying logrotate files..." loudCmd "cp ${AIRTIMEROOT}/legacy/build/airtime-php.logrotate /etc/logrotate.d/airtime-php" loudCmd "cp ${AIRTIMEROOT}/playout/install/logrotate/libretime-liquidsoap.conf /etc/logrotate.d/libretime-liquidsoap" fi +verbose "\n * Installing Shared..." +loudCmd "$pip_cmd install ${AIRTIMEROOT}/shared" +verbose "...Done" + verbose "\n * Installing API client..." loudCmd "$pip_cmd install ${AIRTIMEROOT}/api_client" verbose "...Done" diff --git a/playout/.pylintrc b/playout/.pylintrc new file mode 100644 index 000000000..b2256f54f --- /dev/null +++ b/playout/.pylintrc @@ -0,0 +1,4 @@ +[MESSAGES CONTROL] +disable=missing-module-docstring, + missing-class-docstring, + missing-function-docstring, diff --git a/playout/Makefile b/playout/Makefile index d01412927..b713ae99e 100644 --- a/playout/Makefile +++ b/playout/Makefile @@ -2,7 +2,7 @@ all: lint include ../tools/python.mk -PIP_INSTALL := --editable . +PIP_INSTALL := --editable .[dev] PYLINT_ARG := libretime_liquidsoap libretime_playout MYPY_ARG := libretime_liquidsoap libretime_playout diff --git a/playout/install/logrotate/libretime-liquidsoap.conf b/playout/install/logrotate/libretime-liquidsoap.conf index 620a818cb..3e3f75f3e 100644 --- a/playout/install/logrotate/libretime-liquidsoap.conf +++ b/playout/install/logrotate/libretime-liquidsoap.conf @@ -1,4 +1,4 @@ -/var/log/airtime/pypo-liquidsoap/ls_script.log { +/var/log/libretime/liquidsoap.log { compress rotate 10 size 1000k diff --git a/playout/install/systemd/libretime-liquidsoap.service b/playout/install/systemd/libretime-liquidsoap.service index fc34cbec9..a266184d6 100644 --- a/playout/install/systemd/libretime-liquidsoap.service +++ b/playout/install/systemd/libretime-liquidsoap.service @@ -2,6 +2,8 @@ Description=Libretime Liquidsoap Service [Service] +Environment=LIBRETIME_LOG_FILEPATH=/var/log/libretime/liquidsoap.log + ExecStart=/usr/local/bin/libretime-liquidsoap User=libretime-playout Group=libretime-playout diff --git a/playout/install/systemd/libretime-playout.service b/playout/install/systemd/libretime-playout.service index 50b080ec4..a40b64268 100644 --- a/playout/install/systemd/libretime-playout.service +++ b/playout/install/systemd/libretime-playout.service @@ -3,6 +3,8 @@ Description=Libretime Playout Service After=network-online.target [Service] +Environment=LIBRETIME_LOG_FILEPATH=/var/log/libretime/playout.log + ExecStart=/usr/local/bin/libretime-playout User=libretime-pypo Group=libretime-pypo diff --git a/playout/libretime_liquidsoap/generate_liquidsoap_cfg.py b/playout/libretime_liquidsoap/generate_liquidsoap_cfg.py index a41e24c38..0c2694382 100644 --- a/playout/libretime_liquidsoap/generate_liquidsoap_cfg.py +++ b/playout/libretime_liquidsoap/generate_liquidsoap_cfg.py @@ -1,13 +1,15 @@ -import logging import os import sys import time import traceback +from pathlib import Path +from typing import Optional from libretime_api_client.version1 import AirtimeApiClient +from loguru import logger -def generate_liquidsoap_config(ss): +def generate_liquidsoap_config(ss, log_filepath: Optional[Path]): data = ss["msg"] fh = open("/etc/airtime/liquidsoap.cfg", "w") fh.write("################################################\n") @@ -34,31 +36,31 @@ def generate_liquidsoap_config(ss): fh.write("ignore(%s)\n" % key) auth_path = os.path.dirname(os.path.realpath(__file__)) - fh.write('log_file = "/var/log/airtime/pypo-liquidsoap/