Commit Graph

25 Commits

Author SHA1 Message Date
jo 7988b7467b test: allow to set python linters to fail per app 2022-01-26 10:15:35 +02:00
jo 0f8cb1a5ed chore: set python build system in pyproject.toml
- fix local package install
- local packages requirement url format
2022-01-26 10:15:35 +02:00
jo 441028a1d2 chore: make setup.py file chdir consistent 2022-01-26 10:15:35 +02:00
Jonas L 1924919e18
fix(shared): type is required for default config submodel (#1536)
We cannot load submodels values from environment variables without having the submodel type annotations.
2022-01-24 15:24:16 +02:00
jo d93fb44356 feat(analyzer): analyze cuepoint using ffmpeg
- store cue(in|out) as strings
- reraise when executable was not found

BREAKING CHANGE: The analyzer requires 'ffmpeg'. The 'silan' system dependency can be removed.
2022-01-24 12:54:31 +02:00
jo ceab19271d feat(analyzer): analyze replaygain using ffmpeg
- remove pycairo pip install
- fix py36 compatibility
- reraise when executable was not found

BREAKING CHANGE: The analyzer requires 'ffmpeg'. The 'rgain3' python package and it's system dependencies can be removed.
2022-01-24 12:54:31 +02:00
jo bf7b0d44fb test(analyzer): update fixtures
- add fixture with > 2 silences
2022-01-24 12:54:31 +02:00
jo 6a919a9805 test(analyzer): rename and remove unused imports 2022-01-24 12:54:31 +02:00
jo 522d989cab fix(analyzer): install missing steps package 2022-01-21 11:54:00 +02:00
jo aa2d1ff4c7 refactor(analyzer): simplify entrypoint
The AbstractApp only make it more complex.
2022-01-21 11:54:00 +02:00
jo 35d38df9d3 feat(analyzer): load config using shared helpers
- make rabbitmq config optional
2022-01-21 11:54:00 +02:00
Jonas L 1561353b20
feat(shared): allow cli parametrized decorators (#1527) 2022-01-20 07:30:35 +02:00
jo 2cae31a97a refactor(analyzer): redefine *_analyzer into steps
- update imports and names
- define step as a protocol
- extract analyzer function from classes
2022-01-18 11:18:19 +02:00
jo f6a52c8324 refactor(analyzer): rename analyzer files 2022-01-18 11:18:19 +02:00
Jonas L fe0b2c4a7a
feat(analyzer): enhance analyzer cli and logging (#1507)
Some initial work on modernizing the analyzer app. This replace any custom logger or `logging` based logger with the logging tools from `libretime_shared.logging` and `loguru`.

- rename cli to main
- use pathlib in setup.py
- add api-client and shared package as dev deps
- rework main entrypoint cli to use click and shared helpers
- remove unused imports
- replace logging with logger
- rework analyzer app using shared abstract app
- move analyzer log path to systemd service
- change analyzer working dir

BREAKING CHANGE: The analyzer cli has been reworked and uses new flags / environnement variables for configuration.
`--debug` flag becomes `--log-level <level>`
`--rmq-config-file` flag becomes `--config <filepath>`
`--http-retry-queue-file` flag becomes `--retry-queue-filepath`.
`retry-queue-filepath` default value changed from `/tmp/airtime_analyzer_http_retries` to `retry_queue` in the working dir.
`LIBRETIME_CONF_DIR` environnement variable replaced by `LIBRETIME_CONFIG_FILEPATH`.

BREAKING CHANGE: When running analyzer as a systemd service, the working directory is now /var/lib/libretime/analyzer.
2022-01-17 10:26:30 +02:00
Jonas L 0d25a330cf
chore: rename common section to python (#1509)
this will make the section more explicite,
in addition, this allow to exclude python deps
on docker images for example.
2022-01-13 07:12:50 +02:00
jo 02efadc3d0 chore: fixes after libretime_analyzer rename 2022-01-04 09:18:58 +02:00
jo 62476de478 chore: rename airtime_analyzer dir to libretime_analyzer 2022-01-04 09:18:58 +02:00
Jonas L 4057c88cf0
feat: debian 11 support (#1292)
* Debian 11 Support

Run api ci test on bullseye as well

* Silan does not work for mp3 on bullseye

* Liquisoap does not fail with wma files on bullseye
2021-11-09 11:21:40 +02:00
Kyle Robbertze 7182390000
feat: add support for Ubuntu Focal 20.04 (#1168)
Co-authored-by: Valerio Bozzolan <gnu@linux.it>
2021-11-04 09:55:50 +02:00
dependabot[bot] ccde6039e7
Bump php-amqplib/php-amqplib from 2.12.3 to 3.0.0 in /legacy (#1418)
* Bump php-amqplib/php-amqplib from 2.12.3 to 3.0.0 in /legacy

Bumps [php-amqplib/php-amqplib](https://github.com/php-amqplib/php-amqplib) from 2.12.3 to 3.0.0.
- [Release notes](https://github.com/php-amqplib/php-amqplib/releases)
- [Changelog](https://github.com/php-amqplib/php-amqplib/blob/master/CHANGELOG.md)
- [Commits](https://github.com/php-amqplib/php-amqplib/compare/v2.12.3...v3.0.0)

---
updated-dependencies:
- dependency-name: php-amqplib/php-amqplib
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Replace deprecated AMQPConnection with AMQPStreamConnection

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: jo <ljonas@riseup.net>
2021-10-17 21:55:12 +02:00
dependabot[bot] d61fae8cfa
Bump rgain3 from 1.1.0 to 1.1.1 in /analyzer (#1411)
Bumps [rgain3](https://github.com/chaudum/rgain) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/chaudum/rgain/releases)
- [Changelog](https://github.com/chaudum/rgain3/blob/1.1.1/CHANGES.md)
- [Commits](https://github.com/chaudum/rgain/compare/1.1...1.1.1)

---
updated-dependencies:
- dependency-name: rgain3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-17 18:50:43 +02:00
Jonas L 30b3470a06
Better format enforcing (#1391)
* Add shared python format-check target

* Add .format-check to api lint target

* Format api code with makefile format target

* Add .format-check to tools lint target

* Add .format-check to analyzer lint target

* Format analyzer code with makefile format target

* Add .format-check to celery lint target

* Add .format-check to api_client lint target

* Format api_client code with makefile format target

* Add .format-check to playout lint target

* Run CI linting in parallel

* Disable isort in pre-commit
2021-10-17 16:24:37 +02:00
jo 08f13d850c Update paths after analyzer move 2021-10-17 08:02:47 +00:00
jo 2ef63e8c4e Move python_apps/airtime_analyzer/ to analyzer/ 2021-10-17 08:02:47 +00:00