Commit Graph

82 Commits

Author SHA1 Message Date
jo d9725003c5 feat(playout): integrate api-client v2 calls 2022-07-26 15:14:45 +02:00
Jonas L 77f5c9951e
chore: improve setuptools find_packages (#1985) 2022-07-25 21:19:41 +02:00
Jonas L 368350b269
feat(playout): use single clients instance (#1980)
- Use legacy_client across playout code to make the difference between the old and new clients.
- Setup clients during initialization, and pass clients down to the different apps.
2022-07-22 16:26:43 +02:00
jo 473e770e8a feat: rename AirtimeApiClient to ApiClient 2022-07-22 15:00:38 +02:00
jo 8cb9bd5f32 chore(playout): update api-client imports 2022-07-22 15:00:38 +02:00
jo 71b3f7f065 chore: remove schedule unused independent_event 2022-07-20 12:05:01 +02:00
Jonas L 7e2f2d60f0
chore(playout): restructure modules (#1971) 2022-07-18 15:11:47 +02:00
jo 57046e2a9d chore(api): rename schedule models fields 2022-07-18 00:04:54 +02:00
Jonas L 96af028daa
feat(playout): replace pytz with zoneinfo (#1969) 2022-07-17 22:59:49 +02:00
jo bec5772f8b chore(playout): update defusedxml version range 2022-07-17 21:25:37 +02:00
jo f3af8e1163 chore(playout): remove explicit amqplib 2022-07-17 21:25:37 +02:00
jo 30c202786f chore: update requests version range 2022-07-17 21:25:37 +02:00
jo f256f9bd10 chore: update mutagen version range 2022-07-17 21:25:37 +02:00
jo 5729b116c0 chore(playout): pin kombu version to 4.6.11
This forces to use the same version as the worker.
Previously playout installed kombu>=5.2 and got instanlty
reverted back to 4.6.11 when the worker was installed.
2022-07-17 21:25:37 +02:00
jo 80218f33eb chore: rewrite extract-requirements to python
Using python ast to guess requirements in the setup.py file.
2022-07-17 21:25:37 +02:00
jo 28857fbf49 refactor(playout): remove date_interval_to_seconds function
Replace date_interval_to_seconds function with
either timedelta.total_seconds() or seconds_between().
2022-07-17 13:29:03 +02:00
jo db3f9bed82 chore(playout): remove module docstring 2022-07-17 13:29:03 +02:00
jo ad5dc6caf8 refactor(playout): log level setup 2022-07-17 13:29:03 +02:00
jo 8ef6784a39 refactor(playout): use pathlib to build the path 2022-07-17 13:29:03 +02:00
jo 2bc7d64cc4 feat(playout): use liquidsoap version functions
- remove "packaging" package
2022-07-17 13:29:03 +02:00
jo 58ad40f997 chore(playout): use 'entrypoint' generic module name 2022-07-17 13:29:03 +02:00
jo bd8b17a2cd chore(playout): remove unused liquidsoap.cfg 2022-07-17 11:02:36 +02:00
jo 86a9af1bc1 chore(playout): move liquidsoap package in a module 2022-07-17 11:02:36 +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 b8056a9f7a chore(playout): use EventKind enum 2022-07-01 13:16:57 +02:00
jo 97b723d0a5 chore(playout): rename variables 2022-07-01 13:16:57 +02:00
jo 2ad65bba8c chore(playout): use comments instead of docstrings 2022-07-01 13:16:57 +02:00
jo fa136fad97 chore: explicit schedule file metadata dict values 2022-07-01 11:07:26 +02:00
jo 34864b8623 chore(playout): update file fields 2022-06-29 13:51:07 +02:00
Jonas L 6ef941b3f2
chore(shared): explicit function name time_fromisoformat (#1917) 2022-06-25 17:10:59 +02:00
jo 1faf5a724b chore: move api client get_schedule to playout 2022-06-24 17:56:24 +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 ee98387264 feat(installer): rewrite install script
- remove unused root packages.ini
- write config to yaml file
- allow to set public_url during install
- force icecast start right after package install
- move config file in place at the end of installation

BREAKING CHANGE: The bash installer has been rewritten, the flags and
options changed, please run `./install --help` to get more details.
2022-06-08 23:23:08 +02:00
jo aed6d2f294 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.
2022-06-08 23:23:08 +02:00
jo 604ff20239 feat: change config filename to config.yml
BREAKING: The configuration file name changed from `airtime.conf` to
`config.yml`. Please rename your configuration file accordingly.
2022-06-08 23:23:08 +02:00
Jonas L a73084e612
feat(playout): remove unused liquidsoap_prepare_terminate.py (#1854)
Related to cde6db812f
2022-05-21 18:37:54 +02:00
jo bc6b43c43c feat: rotate logs using libretime user 2022-05-05 09:42:34 +02:00
jo f58e51ec84 fix(playout): disable playout-notify log rotation
Let logrotate handle liquidsoap.log log rotation.

Fix #1546
2022-05-05 09:42:34 +02:00
Jonas L d098671f3b
feat: replace click envar with auto_envvar_prefix (#1829) 2022-05-05 09:41:32 +02:00
Jonas L 5f4badcdeb
ci: build test images for ubuntu jammy (#1743) 2022-04-09 16:18:12 +02:00
Jonas L fef38fb131
chore: rename api_client to api-client (#1727) 2022-04-04 10:25:38 +02:00
Jonas L 8c96c0a094
feat: remove unused python3-venv package (#1728) 2022-04-02 05:41:43 +02:00
Jonas L 331df277b4
docs: fix and update links (#1714) 2022-03-29 13:07:38 +02:00
Jonas L be25dea447
fix(playout): add locales to libretime-playout-notify calls (#1715)
Fix python36 encoding runtime error that was failing on bionic,
see https://click.palletsprojects.com/en/8.1.x/unicode-support/ for
details.

Fixes #1606
2022-03-29 13:04:44 +02:00
jo b38596f56e fix(playout): remove stream_buffer_start in event dispatch
Related to 9fc4552cfe
2022-03-06 15:17:44 +02:00
jo f2b9bd6fed chore(playout): api_client schedule data log entry 2022-03-06 15:17:44 +02:00
Jonas L d55e58e416
chore: auto generate requirements.txt (#1651)
- force LC_ALL for the sort command
2022-02-28 20:02:01 +02:00
jo 90e0bcb6f8 test(playout): add bandit linter check 2022-02-14 21:01:35 +02:00
jo 6419435601 style: format code using black 2022-02-09 17:24:36 +02:00
jo 9fc4552cfe fix(playout): properly populate scheduled_now_webstream
If scheduled_now_webstream is an empty array, the webstream will automatically be stopped, so we need to make sure the scheduled_now_webstream is aways properly populated.
2022-02-02 17:13:52 +02:00