feat: change config dir path to /etc/libretime
BREAKING: The configuration directory changed from `/etc/airtime` to `/etc/libretime`. Please rename your configuration directory accordingly.
This commit is contained in:
parent
604ff20239
commit
aed6d2f294
|
@ -3,7 +3,7 @@ Description=LibreTime Media Analyzer Service
|
|||
|
||||
[Service]
|
||||
Environment=LIBRETIME_LOG_FILEPATH=/var/log/libretime/analyzer.log
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/airtime/config.yml
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/libretime/config.yml
|
||||
WorkingDirectory=/var/lib/libretime/analyzer
|
||||
|
||||
ExecStart=/usr/local/bin/libretime-analyzer
|
||||
|
|
|
@ -19,7 +19,7 @@ post_file() {
|
|||
file_path="${stripped_file_path}"
|
||||
# filename="${file_path##*/}"
|
||||
|
||||
airtime_conf_path=/etc/airtime/config.yml
|
||||
airtime_conf_path=/etc/libretime/config.yml
|
||||
|
||||
#instance_path will look like 1/1384, for example
|
||||
http_path=$(grep base_url ${airtime_conf_path} | awk '{print $3;}')
|
||||
|
|
|
@ -125,7 +125,7 @@ class AirtimeApiClient:
|
|||
UPLOAD_RETRIES = 3
|
||||
UPLOAD_WAIT = 60
|
||||
|
||||
def __init__(self, logger=None, config_path="/etc/airtime/config.yml"):
|
||||
def __init__(self, logger=None, config_path="/etc/libretime/config.yml"):
|
||||
self.logger = logger or logging
|
||||
|
||||
config = Config(filepath=config_path)
|
||||
|
|
|
@ -37,7 +37,7 @@ api_endpoints["file_download_url"] = "files/{id}/download/"
|
|||
class AirtimeApiClient:
|
||||
API_BASE = "/api/v2"
|
||||
|
||||
def __init__(self, logger=None, config_path="/etc/airtime/config.yml"):
|
||||
def __init__(self, logger=None, config_path="/etc/libretime/config.yml"):
|
||||
self.logger = logger or logging
|
||||
|
||||
config = Config(filepath=config_path)
|
||||
|
|
|
@ -7,7 +7,7 @@ KillMode=mixed
|
|||
PrivateTmp=true
|
||||
|
||||
Environment=LIBRETIME_LOG_FILEPATH=/var/log/libretime/api.log
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/airtime/config.yml
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/libretime/config.yml
|
||||
|
||||
ExecStart=/usr/bin/gunicorn \
|
||||
--workers 4 \
|
||||
|
|
|
@ -7,7 +7,7 @@ import sys
|
|||
def main():
|
||||
"""Run administrative tasks."""
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "libretime_api.settings.prod")
|
||||
os.environ.setdefault("LIBRETIME_CONFIG_FILEPATH", "/etc/airtime/config.yml")
|
||||
os.environ.setdefault("LIBRETIME_CONFIG_FILEPATH", "/etc/libretime/config.yml")
|
||||
try:
|
||||
from django.core.management import execute_from_command_line
|
||||
except ImportError as exc:
|
||||
|
|
|
@ -21,7 +21,7 @@ Feel free to pick the backup software of your choice, but know that rsync and si
|
|||
|
||||
### Backup the configuration
|
||||
|
||||
On common setups, you need to backup the entire `/etc/airtime` folder.
|
||||
On common setups, you need to backup the entire `/etc/libretime` folder.
|
||||
|
||||
### Backup the database
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ a [system account](https://www.freeipa.org/page/HowTo/LDAP#System_Accounts) that
|
|||
set up beforehand.
|
||||
|
||||
You can configure everything pertaining to how LibreTime accesses LDAP in
|
||||
`/etc/airtime/config.yml`. The default file has the following values you need to change.
|
||||
`/etc/libretime/config.yml`. The default file has the following values you need to change.
|
||||
|
||||
```yml
|
||||
#
|
||||
|
|
|
@ -28,7 +28,7 @@ It is strongly recommended that you do this before exposing your server to the i
|
|||
Make sure to include the semicolon at the end! A response of `ALTER ROLE` means that the command ran successfully.
|
||||
3. Change the password for the _airtime_ user with `ALTER USER airtime WITH PASSWORD 'new_password';`
|
||||
A response of `ALTER ROLE` means that the command ran successfully.
|
||||
4. If all is successful, logout of PostgreSQL with `\q`, go back to `/etc/airtime/config.yml` to edit the password
|
||||
4. If all is successful, logout of PostgreSQL with `\q`, go back to `/etc/libretime/config.yml` to edit the password
|
||||
in the config file, and restart all services mentioned in the previous section.
|
||||
|
||||
## Icecast
|
||||
|
@ -61,4 +61,4 @@ To change the default password for RabbitMQ, run the following command
|
|||
sudo rabbitmqctl change_password airtime newpassword
|
||||
```
|
||||
|
||||
and then update the `/etc/airtime/config.yml` file with the new password.
|
||||
and then update the `/etc/libretime/config.yml` file with the new password.
|
||||
|
|
|
@ -46,7 +46,7 @@ The Icecast server has a _fallback-mount_ feature which can be used to move clie
|
|||
|
||||
To enable fallback mounts, edit the main Icecast configuration file (`/etc/icecast2/icecast.xml`) to define the mount points you will use, and the relationship between them.
|
||||
|
||||
The example mount section provided in the `icecast.xml` file is commented out by default. Before or after the commented section, add three mount point definitions. The default mount point used by LibreTime is `/airtime_128` which is shown in the `/etc/airtime/liquidsoap.cfg` file. You must also define a mount point for the live source (ex. `/live.ogg`) and a mount point for the public to connect to (ex. `/stream.ogg`).
|
||||
The example mount section provided in the `icecast.xml` file is commented out by default. Before or after the commented section, add three mount point definitions. The default mount point used by LibreTime is `/airtime_128` which is shown in the `/etc/libretime/liquidsoap.cfg` file. You must also define a mount point for the live source (ex. `/live.ogg`) and a mount point for the public to connect to (ex. `/stream.ogg`).
|
||||
|
||||
```xml title="/etc/icecast2/icecast.xml"
|
||||
<mount>
|
||||
|
@ -75,7 +75,7 @@ Setting the value of _fallback-override_ to 1 (enabled) means that when the `/li
|
|||
|
||||
## Source configuration
|
||||
|
||||
Connect the other source to the Icecast server with the same parameters defined in the `/etc/airtime/liquidsoap.cfg` file, except for the mount point. This should one of the mount points you have defined in the `/etc/icecast2/icecast.xml` file, such as `/live.ogg` in the example above.
|
||||
Connect the other source to the Icecast server with the same parameters defined in the `/etc/libretime/liquidsoap.cfg` file, except for the mount point. This should one of the mount points you have defined in the `/etc/icecast2/icecast.xml` file, such as `/live.ogg` in the example above.
|
||||
|
||||
:::tip Streaming with Mixxx
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ title: Configuration
|
|||
sidebar_position: 20
|
||||
---
|
||||
|
||||
To configure LibreTime, you need to edit the `/etc/airtime/config.yml` file. This page describe the available options to configure your installation.
|
||||
To configure LibreTime, you need to edit the `/etc/libretime/config.yml` file. This page describe the available options to configure your installation.
|
||||
|
||||
## General
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@ On a common setup, to access LibreTime specific logs you should search for the f
|
|||
For some LibreTime services, you can set a higher log level using the `LIBRETIME_LOG_LEVEL` environment variable, or by running the service by hand and using a command line flag:
|
||||
|
||||
```bash
|
||||
sudo -u www-data libretime-analyzer --config /etc/airtime/config.yml --log-level debug
|
||||
sudo -u www-data libretime-analyzer --config /etc/libretime/config.yml --log-level debug
|
||||
```
|
||||
|
||||
The `/var/log/apache2/libretime.error.log` file contains logs from the web server.
|
||||
|
|
|
@ -8,7 +8,7 @@ We're in the process of rewriting LibreTime's API. This page contains the instru
|
|||
|
||||
:::
|
||||
|
||||
The LibreTime API enables many types of information about the broadcast schedule and configuration to be retrieved from the LibreTime server. Other than the live-info and week-info data fetched by website widgets (see the chapter _Exporting the schedule_), all API requests must be authenticated using the secret API key stored in the file `/etc/airtime/api_client.cfg` on the LibreTime server. This key is autogenerated during LibreTime installation and should be unique for each server.
|
||||
The LibreTime API enables many types of information about the broadcast schedule and configuration to be retrieved from the LibreTime server. Other than the live-info and week-info data fetched by website widgets (see the chapter _Exporting the schedule_), all API requests must be authenticated using the secret API key stored in the file `/etc/libretime/api_client.cfg` on the LibreTime server. This key is autogenerated during LibreTime installation and should be unique for each server.
|
||||
|
||||
If you intend to use the LibreTime API across a public network, for security reasons it is highly recommended that all API requests are sent over encrypted https: and that the web server is configured to accept requests to the api/ directory from specific host names or IP addresses only.
|
||||
|
||||
|
|
|
@ -32,6 +32,12 @@ The configuration file name changed from `airtime.conf` to `config.yml`. Please
|
|||
sudo mv /etc/airtime/airtime.conf /etc/airtime/config.yml
|
||||
```
|
||||
|
||||
The configuration directory changed from `/etc/airtime` to `/etc/libretime`. Please rename your configuration directory using the following command:
|
||||
|
||||
```bash
|
||||
sudo mv /etc/airtime /etc/libretime
|
||||
```
|
||||
|
||||
The configuration file format changed to `yml`. Please rewrite your [configuration file](../admin-manual/setup/configuration.md) using the [yaml format](https://yaml.org/).
|
||||
|
||||
### Apache and PHP configuration files
|
||||
|
|
22
install
22
install
|
@ -843,7 +843,7 @@ if [ -f /etc/airtime/airtime.conf ]; then
|
|||
verbose "...Done"
|
||||
|
||||
echo "Looks like you have an old version of Airtime. Your current /etc/airtime/airtime.conf \
|
||||
will be moved to /etc/airtime/airtime.conf.tmp"
|
||||
will be moved to /etc/libretime/airtime.conf.tmp"
|
||||
# If we don't remove the existing python files in /usr/lib and the
|
||||
# /etc/init.d startup scripts, services won't work properly
|
||||
if [ -d /usr/lib/airtime/ ]; then
|
||||
|
@ -864,7 +864,7 @@ will be moved to /etc/airtime/airtime.conf.tmp"
|
|||
rm -rf "/usr/share/airtime"
|
||||
fi
|
||||
|
||||
mv /etc/airtime/airtime.conf /etc/airtime/airtime.conf.tmp
|
||||
mv /etc/airtime/airtime.conf /etc/libretime/airtime.conf.tmp
|
||||
set -e
|
||||
fi
|
||||
fi
|
||||
|
@ -964,7 +964,7 @@ if [ "$icecast" = "t" ]; then
|
|||
fi
|
||||
systemInitCommand enable "${icecast_unit_name}"
|
||||
# only update icecast password if
|
||||
if [ ! -e "/etc/airtime/airtime.conf" ] && [ ! -e "/etc/airtime/airtime.conf.tmp" ]; then
|
||||
if [ ! -e "/etc/libretime/airtime.conf" ] && [ ! -e "/etc/libretime/airtime.conf.tmp" ]; then
|
||||
icecast_pass=$(tr -dc _A-Z-a-z-0-9 < /dev/urandom | head -c"${1:-12}")
|
||||
echo "$icecast_pass" > /tmp/icecast_pass
|
||||
loud "\n New install detected setting icecast password to random value."
|
||||
|
@ -1128,23 +1128,23 @@ if [ $skip_rabbitmq -eq 0 ]; then
|
|||
loudCmd "rabbitmqctl set_permissions -p ${RABBITMQ_VHOST} ${RABBITMQ_USER} .\* .\* .\*"
|
||||
fi
|
||||
|
||||
if [ ! -d "/etc/airtime" ]; then
|
||||
if [ ! -d "/etc/libretime" ]; then
|
||||
loud "\n-----------------------------------------------------"
|
||||
loud " * Installing Libretime * "
|
||||
loud "-----------------------------------------------------"
|
||||
|
||||
verbose "\n * Creating /etc/airtime/ directory..."
|
||||
mkdir /etc/airtime
|
||||
verbose "\n * Creating /etc/libretime/ directory..."
|
||||
mkdir /etc/libretime
|
||||
fi
|
||||
|
||||
if [ "$icecast" = "t" ]; then
|
||||
if [ ! -e "/etc/airtime/airtime.conf" ] && [ ! -e "/etc/airtime/airtime.conf.tmp" ]; then
|
||||
# need to copy the icecast_pass from temp to /etc/airtime so web-based installer can read it
|
||||
cp /tmp/icecast_pass /etc/airtime/icecast_pass
|
||||
if [ ! -e "/etc/libretime/airtime.conf" ] && [ ! -e "/etc/libretime/airtime.conf.tmp" ]; then
|
||||
# need to copy the icecast_pass from temp to /etc/libretime so web-based installer can read it
|
||||
cp /tmp/icecast_pass /etc/libretime/icecast_pass
|
||||
fi
|
||||
fi
|
||||
|
||||
chown -R ${web_user}:${web_user} /etc/airtime
|
||||
chown -R ${web_user}:${web_user} /etc/libretime
|
||||
|
||||
if [ ! -d "/srv/airtime" ]; then
|
||||
mkdir -p /srv/airtime
|
||||
|
@ -1159,7 +1159,7 @@ if [ "$selinux" = "t" ]; then
|
|||
loud "-----------------------------------------------------"
|
||||
|
||||
verbose "\n * Running restorecon..."
|
||||
loudCmd "restorecon -Rv /etc/airtime /srv/airtime > /dev/null 2>&1"
|
||||
loudCmd "restorecon -Rv /etc/libretime /srv/airtime > /dev/null 2>&1"
|
||||
verbose "...Done"
|
||||
fi
|
||||
|
||||
|
|
|
@ -125,12 +125,12 @@ setsebool -P git_system_use_nfs 1 # same for git
|
|||
|
||||
semanage port -a -t http_port_t -p tcp 9080 # default vagrant web port
|
||||
|
||||
# Allow apache full access to /vagrant and /etc/airtime
|
||||
# Allow apache full access to /vagrant and /etc/libretime
|
||||
semanage fcontext -a -t httpd_sys_rw_content_t "/vagrant(/.*)?"
|
||||
semanage fcontext -a -t httpd_sys_rw_content_t "/etc/airtime(/.*)?"
|
||||
semanage fcontext -a -t httpd_sys_rw_content_t "/etc/libretime(/.*)?"
|
||||
semanage fcontext -a -t httpd_sys_rw_content_t "/srv/airtime(/.*)?"
|
||||
|
||||
restorecon -Rv /vagrant /etc/airtime /srv/airtime
|
||||
restorecon -Rv /vagrant /etc/libretime /srv/airtime
|
||||
|
||||
# Disable default apache page
|
||||
sed -i -e 's/^/#/' /etc/httpd/conf.d/welcome.conf
|
||||
|
|
|
@ -13,7 +13,7 @@ resources.modules[] = ""
|
|||
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts/"
|
||||
resources.modules[] = ""
|
||||
resources.view[] =
|
||||
; These are no longer needed. They are specified in /etc/airtime/config.yml:
|
||||
; These are no longer needed. They are specified in /etc/libretime/config.yml:
|
||||
;resources.db.adapter = "Pdo_Pgsql"
|
||||
;resources.db.params.charset = "utf8"
|
||||
;resources.db.params.host = "localhost"
|
||||
|
|
|
@ -20,7 +20,7 @@ defined('VERBOSE_STACK_TRACE') || define('VERBOSE_STACK_TRACE', getenv('VERBOSE_
|
|||
define('LIBRETIME_LOG_DIR', getenv('LIBRETIME_LOG_DIR') ?: '/var/log/libretime');
|
||||
define('LIBRETIME_LOG_FILEPATH', getenv('LIBRETIME_LOG_FILEPATH') ?: LIBRETIME_LOG_DIR . '/legacy.log');
|
||||
|
||||
define('LIBRETIME_CONFIG_DIR', getenv('LIBRETIME_CONFIG_DIR') ?: '/etc/airtime');
|
||||
define('LIBRETIME_CONFIG_DIR', getenv('LIBRETIME_CONFIG_DIR') ?: '/etc/libretime');
|
||||
define('LIBRETIME_CONF_DIR', LIBRETIME_CONFIG_DIR); // Deprecated
|
||||
define('LIBRETIME_CONFIG_FILEPATH', getenv('LIBRETIME_CONFIG_FILEPATH') ?: LIBRETIME_CONFIG_DIR . '/config.yml');
|
||||
|
||||
|
|
|
@ -64,7 +64,7 @@
|
|||
?>">
|
||||
Make sure you aren't missing any of the Postgres dependencies in the table above.
|
||||
If your dependencies check out, make sure your database configuration settings in
|
||||
<code>/etc/airtime/config.yml</code> are correct and the LibreTime database was installed correctly.
|
||||
<code>/etc/libretime/config.yml</code> are correct and the LibreTime database was installed correctly.
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
@ -81,7 +81,7 @@
|
|||
<?php
|
||||
} else {
|
||||
?>">
|
||||
Make sure RabbitMQ is installed correctly, and that your settings in /etc/airtime/config.yml
|
||||
Make sure RabbitMQ is installed correctly, and that your settings in /etc/libretime/config.yml
|
||||
are correct. Try using <code>sudo rabbitmqctl list_users</code> and <code>sudo rabbitmqctl list_vhosts</code>
|
||||
to see if the airtime user (or your custom RabbitMQ user) exists, then checking that
|
||||
<code>sudo rabbitmqctl list_exchanges</code> contains entries for airtime-analyzer, airtime-pypo,
|
||||
|
|
|
@ -65,7 +65,7 @@ class MediaSetup extends Setup
|
|||
rename($tmpFile, $bakFile);
|
||||
}
|
||||
} else {
|
||||
self::$message = "Failed to move config.yml; /etc/airtime doesn't exist!";
|
||||
self::$message = "Failed to move config.yml; /etc/libretime doesn't exist!";
|
||||
self::$errors[] = 'ERR';
|
||||
}
|
||||
|
||||
|
@ -76,7 +76,7 @@ class MediaSetup extends Setup
|
|||
}
|
||||
|
||||
/**
|
||||
* Moves /tmp/airtime.temp.conf to /etc/airtime/config.yml and then removes it to complete setup.
|
||||
* Moves /tmp/airtime.temp.conf to /etc/libretime/config.yml and then removes it to complete setup.
|
||||
*
|
||||
* @return bool false if either of the copy or removal operations fail
|
||||
*/
|
||||
|
|
|
@ -124,7 +124,7 @@ require_once 'general-setup.php';
|
|||
require_once 'media-setup.php';
|
||||
|
||||
// If config.yml exists, we shouldn't be here
|
||||
if (!file_exists('/etc/airtime/config.yml')) {
|
||||
if (!file_exists('/etc/libretime/config.yml')) {
|
||||
if (isset($_GET['obj']) && $objType = $_GET['obj']) {
|
||||
$obj = new $objType($_POST);
|
||||
if ($obj instanceof Setup) {
|
||||
|
|
|
@ -48,8 +48,8 @@ class AirtimeInstall
|
|||
} catch (PropelException $e) {
|
||||
return null;
|
||||
}
|
||||
if (file_exists('/etc/airtime/config.yml')) {
|
||||
$values = parse_ini_file('/etc/airtime/config.yml', true);
|
||||
if (file_exists('/etc/libretime/config.yml')) {
|
||||
$values = parse_ini_file('/etc/libretime/config.yml', true);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@ Description=Libretime Liquidsoap Service
|
|||
|
||||
[Service]
|
||||
Environment=LIBRETIME_LOG_FILEPATH=/var/log/libretime/liquidsoap.log
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/airtime/config.yml
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/libretime/config.yml
|
||||
WorkingDirectory=/var/lib/libretime/playout
|
||||
|
||||
ExecStart=/usr/local/bin/libretime-liquidsoap
|
||||
|
|
|
@ -4,7 +4,7 @@ After=network-online.target
|
|||
|
||||
[Service]
|
||||
Environment=LIBRETIME_LOG_FILEPATH=/var/log/libretime/playout.log
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/airtime/config.yml
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/libretime/config.yml
|
||||
WorkingDirectory=/var/lib/libretime/playout
|
||||
|
||||
ExecStart=/usr/local/bin/libretime-playout
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
%include "/etc/airtime/liquidsoap.cfg"
|
||||
%include "/etc/libretime/liquidsoap.cfg"
|
||||
|
||||
if (log_file != "") then
|
||||
set("log.file.path", log_file)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
%include "/etc/airtime/liquidsoap.cfg"
|
||||
%include "/etc/libretime/liquidsoap.cfg"
|
||||
|
||||
if (log_file != "") then
|
||||
set("log.file.path", log_file)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
%include "/etc/airtime/liquidsoap.cfg"
|
||||
%include "/etc/libretime/liquidsoap.cfg"
|
||||
|
||||
if (log_file != "") then
|
||||
set("log.file.path", log_file)
|
||||
|
|
|
@ -11,7 +11,7 @@ from loguru import logger
|
|||
|
||||
def generate_liquidsoap_config(ss, log_filepath: Optional[Path]):
|
||||
data = ss["msg"]
|
||||
fh = open("/etc/airtime/liquidsoap.cfg", "w")
|
||||
fh = open("/etc/libretime/liquidsoap.cfg", "w")
|
||||
fh.write("################################################\n")
|
||||
fh.write("# THIS FILE IS AUTO GENERATED. DO NOT CHANGE!! #\n")
|
||||
fh.write("################################################\n")
|
||||
|
|
|
@ -3,7 +3,7 @@ Description=LibreTime Worker Service
|
|||
|
||||
[Service]
|
||||
Environment=LIBRETIME_LOG_FILEPATH=/var/log/libretime/worker.log
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/airtime/config.yml
|
||||
Environment=LIBRETIME_CONFIG_FILEPATH=/etc/libretime/config.yml
|
||||
WorkingDirectory=/var/lib/libretime/worker
|
||||
|
||||
ExecStart=/usr/bin/sh -c 'celery worker \
|
||||
|
|
Loading…
Reference in New Issue