Commit Graph

527 Commits

Author SHA1 Message Date
Jonas L 646bc81724
fix: pin pip version to <24.1 to allow installing pytz (celery) (#3043)
Related to https://github.com/libretime/libretime/issues/2983
2024-06-22 17:35:30 +02:00
Jonas L c96f78df9f
fix: pin pip version to <21.4 to allow installing pytz (celery) (#3041)
Related to https://github.com/libretime/libretime/issues/2983
2024-06-22 16:33:23 +02:00
Thomas Göttgens 71b20ae3c9
fix(installer): setup the worker entrypoint (#2996)
Worker service fails after upgrade.

Related to #2988
2024-04-18 14:27:20 +02:00
Jonas L 5b23852f8d
feat(installer): add the `--storage-path` flag (#2865)
### Description

Add the `--storage-path` flag to the installer to configure a custom
storage path out of the box.

On existing installation, we check that the 'storage.path' in the
configuration file is the same as the one provided by the installer.
This ensures that we don't update the nginx configuration file with an
invalid storage path.
2024-01-01 14:38:05 +01:00
Jonas L 4603c1759f
feat!: use nginx to serve media files (#2860)
Closes #2522

To reduce the strain on the API service, we moved the media file serving
to the Nginx web server. The API is still handling the authentication,
but delegates the serving using the `X-Accel-Redirect` header.

BREAKING CHANGE: The media file serving is now handled by Nginx instead
of the API service. The `storage.path` field is now used in the Nginx
configuration, so make sure to update the Nginx configuration file if
you change it.
2023-12-30 18:59:15 +01:00
Jonas L f72b7f9c97
feat(installer)!: change default listen port to 8080 (#2852)
Closes #2575
Closes #2543

BREAKING CHANGE: The default listen port for the installer is now
`8080`. We recommend that you put a reverse proxy in front of LibreTime.
2023-12-29 17:49:07 +01:00
Jonas L 35d7eace13
feat(installer)!: remove the `--update-nginx` flag (#2851)
### Description

Related to #2543

BREAKING CHANGE: The `--update-nginx` flag was removed from the
installer. The nginx configuration deployed by the installer will now
always be overwritten. Make sure to move your customizations to a
reverse proxy configuration.
2023-12-29 15:55:35 +01:00
jo a363b3adfb feat: install inside a python3 venv 2023-05-11 09:52:58 +01:00
jo 755848482d feat: set icecast mount default charset to UTF-8
On first install, configure icecast to use utf-8 as default charset for it's mounts.

Fixes #2501
2023-04-12 11:42:51 +01:00
jo 4c4821a877 fix(installer): ignore whitespace during diff 2023-04-12 11:42:51 +01:00
Jonas L e992d7147e
fix(installer): bump setuptools to ~=67.3 (#2387) 2023-03-22 09:15:57 +00:00
Jonas L d800c5e280
feat: use secret_key config field instead of api_key (#2444)
Fixes #2426
2023-03-22 09:14:11 +00:00
Jonas L 2facdc61ed
feat(installer): configure timezone using timedatectl (#2418) 2023-03-03 17:53:56 +02:00
jo 9384df7be2
Merge branch '3.0.x' into main 2023-02-26 20:16:38 +01:00
Jonas L ce36197ef7
fix(installer): create systemd dirs if missing (#2379) 2023-02-20 20:17:13 +02:00
Jonas L 1c768b9251
fix(installer): print unsupported distribution error (#2368) 2023-02-09 19:38:24 +02:00
jo e92be34e2a fix(installer): only setup nginx on first install
Users usually want to setup a ssl certificate for LibreTime. Disabling any nginx config change unless it is the first install should prevent breaking a possible certbot setup.
2023-02-03 14:59:58 +01:00
jo 9a65e08890 fix(installer): print diff on file deployment 2023-02-03 14:59:58 +01:00
jo a5e4d17e20 fix(installer): allow different actions on template_file 2023-02-03 14:59:58 +01:00
jo 3b8638cd15 fix(installer): set home and login when running as postgres
Remove warnings if the current dir is not writable by postgres
2022-12-09 07:33:46 +02:00
jo 1f7852d13b fix(installer): install missing sudo 2022-12-09 07:33:46 +02:00
jo f231364915 fix(installer): set home and login when running as postgres
Remove warnings if the current dir is not writable by postgres
2022-12-09 07:33:19 +02:00
jo bea28f4b57 fix(installer): install missing sudo 2022-12-09 07:33:19 +02:00
jo 7d514a9306 chore: list distribution releases by release date
Old releases should be popped from the left/top and new releases should be added to the right/bottom of any distro release list.
2022-10-10 20:11:33 +02:00
jo 5eda6093f4 feat: drop Debian Buster support
Fixes #2036
2022-10-10 20:11:33 +02:00
jo 448cff7600 feat: drop Ubuntu Bionic support
Fixes #2035
2022-10-10 20:11:33 +02:00
Jonas L d03fe5bf7d
fix: disable some systemd security features on bionic (#2219)
Fixes #2217
2022-10-10 16:57:56 +02:00
Jonas L e991870e2d
chore: clean unmaintained centos files (#2212)
Fix #1475
2022-10-08 08:07:53 +02:00
jo d10bcbce42 chore(installer): migrate instructions on upgrade 2022-09-15 16:20:37 +02:00
jo dead0a3429 fix(installer): config should not be world readable 2022-09-08 18:57:21 +02:00
jo d338e2ec88 fix(installer): config dir should be read only
Now that liquidsoap does not write any file in /etc/libretime, we can
make it read only.
2022-09-08 18:57:21 +02:00
Jonas L f4b1387e01
fix(shared): install tzdata distibutions package (#2105)
zoneinfo rely on the system tzdata package to work.
2022-09-08 17:50:39 +02:00
Jonas L fb789c323c
fix(installer): simplify distro support notice (#2106) 2022-09-08 17:49:54 +02:00
jo ba73866e47 feat(installer): deploy stream config 2022-09-06 13:21:54 +02:00
jo 2a74649882 feat(api): remove set passwords command 2022-09-06 13:21:54 +02:00
jo fde7a760c6 fix(installer): fix compatibility with bionic
Fixes #2079

- Install python3 based gunicorn packages for bionic
- Fix old filesystem hierarchy paths for bionic
- Enable icecast in /etc/default/icecast2 for bionic
2022-09-01 19:17:33 +02:00
jo cd151da603 fix(installer): only upgrade pip packages if needed 2022-09-01 19:17:33 +02:00
jo c244cc812d fix(api): install gunicorn from pip for bionic
Fixes #2077
2022-09-01 19:17:33 +02:00
Jonas L 2edbf15bf4
feat(worker): rename service and package to libretime-worker (#2065)
BREAKING CHANGE: The `libretime-celery` python package and service was renamed to `libretime-worker`. Make sure to remove the old python package and service.
2022-08-20 08:13:30 +02:00
Jonas L 5367bc8d61
feat(installer): use ed for config update (#2013) 2022-08-01 14:37:19 +02:00
Jonas L e6d24333cb
fix(installer): clean legacy files before copying (#2002) 2022-07-27 09:51:34 +02:00
Jonas L c4bccf16f9
feat(installer): remove allow-restart flag (#1970)
Services management should be handled by the admin. You can use the following command `systemctl restart  libretime.target`
2022-07-17 23:58:51 +02:00
jo 1cb03c35d2 feat(api): listen on unix socket with gunicorn 2022-07-07 10:51:07 +02:00
jo ec45717ccf feat: replace apache2 with nginx + php-fpm
BREAKING CHANGE: The `apache2` webserver has been replaced with `nginx` and `php-fpm`, be sure to uninstall `apache2` and clean related configuration files from your system before upgrading.
2022-07-07 10:51:07 +02:00
jo 2f205544c2 feat: use dedicated 'libretime' user
BREAKING CHANGE: The default `www-data` user has been replaced by a dedicated  `libretime` user to run the services. Be sure to change the ownership of the libretime files.
2022-07-07 10:51:07 +02:00
jo 0bb792d047 feat(installer): load .env file to persistent install config 2022-07-07 10:51:07 +02:00
jo e8fc5cd1c5 feat(installer): rename shared files path to /usr/share/libretime
BREAKING CHANGE: The shared files path changed from `/usr/share/airtime` to `/usr/share/libretime`. The directory must be renamed **before the upgrade procedure**.
2022-06-08 23:23:08 +02:00
jo f7bb6e7592 feat: move storage path setting to configuration file
- change default storage path to /srv/libretime
- remove music dirs table
- use /tmp for testing storage
- storage dir should always have a trailing slash
2022-06-08 23:23:08 +02:00
jo 510e978952 feat: add systemd libretime.target
- add wanted by
- instantly start services in vagrant
2022-06-08 23:23:08 +02:00
jo a9c2271559 feat(installer): post install setup instructions 2022-06-08 23:23:08 +02:00