engine issueshttps://gitlab.servus.at/aura/engine/-/issues2024-02-28T16:56:33+01:00https://gitlab.servus.at/aura/engine/-/issues/144Improve test coverage of `aura_engine/base/lang.py`2024-02-28T16:56:33+01:00David TrattnigImprove test coverage of `aura_engine/base/lang.py`Parent: https://gitlab.servus.at/aura/engine/-/issues/125+
---
Based on the [orm-less-scheduling](https://gitlab.servus.at/aura/engine/-/tree/orm-less-scheduling?ref_type=heads) branch or after engine#100 is merged to `main`.Parent: https://gitlab.servus.at/aura/engine/-/issues/125+
---
Based on the [orm-less-scheduling](https://gitlab.servus.at/aura/engine/-/tree/orm-less-scheduling?ref_type=heads) branch or after engine#100 is merged to `main`.1.0-alpha5Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/143Improve test coverage of `aura_engine/base/config.py`2024-03-14T22:35:39+01:00David TrattnigImprove test coverage of `aura_engine/base/config.py`Parent: https://gitlab.servus.at/aura/engine/-/issues/125+
---
Based on the [orm-less-scheduling](https://gitlab.servus.at/aura/engine/-/tree/orm-less-scheduling?ref_type=heads) branch or after engine#100 is merged to `main`.Parent: https://gitlab.servus.at/aura/engine/-/issues/125+
---
Based on the [orm-less-scheduling](https://gitlab.servus.at/aura/engine/-/tree/orm-less-scheduling?ref_type=heads) branch or after engine#100 is merged to `main`.1.0-alpha4 — Raving Raccoon 🤪🦝Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/142Improve test coverage of `aura_engine/plugins/monitor.py`2024-03-18T20:47:26+01:00David TrattnigImprove test coverage of `aura_engine/plugins/monitor.py`Parent: https://gitlab.servus.at/aura/engine/-/issues/125+
---
Based on the [orm-less-scheduling](https://gitlab.servus.at/aura/engine/-/tree/orm-less-scheduling?ref_type=heads) branch or after engine#100 is merged to `main`.Parent: https://gitlab.servus.at/aura/engine/-/issues/125+
---
Based on the [orm-less-scheduling](https://gitlab.servus.at/aura/engine/-/tree/orm-less-scheduling?ref_type=heads) branch or after engine#100 is merged to `main`.1.0-alpha5Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/141Line-in selection throws error2024-02-21T10:21:56+01:00Chris PastlLine-in selection throws errorError when selecting a line-in source in dashboard:
```
engine | 2024-02-20T21:40:39.483662146Z self.engine.player.preload(entries[0])
engine | 2024-02-20T21:40:39.483667862Z File "/srv/src/aura_engine/engine.py", line 300, in pr...Error when selecting a line-in source in dashboard:
```
engine | 2024-02-20T21:40:39.483662146Z self.engine.player.preload(entries[0])
engine | 2024-02-20T21:40:39.483667862Z File "/srv/src/aura_engine/engine.py", line 300, in preload
engine | 2024-02-20T21:40:39.483760076Z channel_name = self.resource_map.live_channel_for_resource(entry.source)
engine | 2024-02-20T21:40:39.483765598Z TypeError: ResourceMapping.live_channel_for_resource() takes 1 positional argument but 2 were given
```1.0-alpha3 — Playful Platypus ▶️🦦Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/140Merge and test code changes on main to the orm-less-scheduling branch2023-11-28T14:49:22+01:00David TrattnigMerge and test code changes on main to the orm-less-scheduling branchSince many refactorings have happened, this could take a bit longer.
After things are fine, merge it to main again.Since many refactorings have happened, this could take a bit longer.
After things are fine, merge it to main again.1.0-alpha3 — Playful Platypus ▶️🦦David TrattnigDavid Trattnighttps://gitlab.servus.at/aura/engine/-/issues/139Fix config var naming2023-10-18T21:52:07+02:00Chris PastlFix config var namingFix `fade_in_time` and `fade_out_time` in configFix `fade_in_time` and `fade_out_time` in config1.0-alpha3 — Playful Platypus ▶️🦦Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/138No playout after engine reboot if timeslot has already started2024-03-26T16:18:46+01:00Chris PastlNo playout after engine reboot if timeslot has already startedTried to start the playout by manually creating a timeslot in the DB and adjusting its start/stop time.
**Works as expected if timslot_start is in the future.**
If current time is between `timeslot_start` and `timeslot_end` - which wil...Tried to start the playout by manually creating a timeslot in the DB and adjusting its start/stop time.
**Works as expected if timslot_start is in the future.**
If current time is between `timeslot_start` and `timeslot_end` - which will be probably true after (re)starting the engine - no scheduled playout will start until the next timeslot.
![Bildschirmfoto_2023-09-19_um_17.53.41](/uploads/f43b590bf409c14821dbf0f567c99972/Bildschirmfoto_2023-09-19_um_17.53.41.png)
```bash
2023-09-19 17:53:50,270:engine:INFO - Finished loading local programme (0 timeslots) - [programme.py:94-refresh()]
2023-09-19 17:53:50,271:engine:INFO - Finished queuing programme. - [scheduler.py:285-queue_programme()]
```1.0-alpha4 — Raving Raccoon 🤪🦝David TrattnigDavid Trattnighttps://gitlab.servus.at/aura/engine/-/issues/137Test cases for "src/aura_engine/core"2024-03-14T22:37:17+01:00David TrattnigTest cases for "src/aura_engine/core"Parent: #125+
---
Implement test cases with good code coverage.Parent: #125+
---
Implement test cases with good code coverage.1.0-alpha4 — Raving Raccoon 🤪🦝Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/136Error while scheduling stream, logs crowded with redundant "Wait a Little Bit...2024-03-23T18:05:17+01:00Ole Binderole@freirad.atError while scheduling stream, logs crowded with redundant "Wait a Little Bit Until Preloading Is Done..." messagesWhen scheduling a stream (`http://stream.fro.at:8008/fro-128.ogg`), I get an error:
```shell
engine | 2024-02-22 12:42:44,816:engine:INFO - === preload('PlaylistEntry #5 [12:43:00 - 12:45:00 | 120.0sec | Source: ...m.fro...When scheduling a stream (`http://stream.fro.at:8008/fro-128.ogg`), I get an error:
```shell
engine | 2024-02-22 12:42:44,816:engine:INFO - === preload('PlaylistEntry #5 [12:43:00 - 12:45:00 | 120.0sec | Source: ...m.fro.at:8008/fro-128.ogg]') === - [scheduler.py:550-do_preload()]
engine | 2024-02-22 12:42:44,816:engine:INFO - Got free 'http' channel 'in_stream_0' - [mixer.py:150-get_free_channel()]
engine | 2024-02-22 12:42:44,816:engine:INFO - Assign channel [2 : in_stream_0] to entry - [engine.py:318-preload()]
engine | 2024-02-22 12:42:44,819:engine:INFO - in_stream_0.start result: Done! - [channels.py:529-start()]
engine | 2024-02-22 12:42:44,820:engine:INFO - in_stream_0.status result: polling - [channels.py:482-is_ready()]
engine | Exception in thread PRELOAD#10:do_preload:2024-02-22_12:42:45:
engine | Traceback (most recent call last):
engine | File "/usr/local/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
engine | self.run()
engine | File "/usr/local/lib/python3.10/threading.py", line 1378, in run
engine | self.function(*self.args, **self.kwargs)
engine | File "/srv/src/aura_engine/control.py", line 166, in wrapper_func
engine | self.func(
engine | File "/srv/src/aura_engine/scheduling/scheduler.py", line 551, in do_preload
engine | self.engine.player.preload(entries[0])
engine | File "/srv/src/aura_engine/engine.py", line 320, in preload
engine | is_ready = entry.channel.load(uri, metadata=metadata)
engine | File "/srv/src/aura_engine/core/channels.py", line 452, in load
engine | if retries >= max_retries:
engine | TypeError: '>=' not supported between instances of 'int' and 'NoneType'
```
As a result engine keeps logging this continously:
```shell
engine | 2024-02-22 12:57:54,734:engine:INFO - PLAY: Wait a little bit until preloading is done ... - [scheduler.py:573-do_play()]
engine | 2024-02-22 12:57:56,737:engine:INFO - PLAY: Wait a little bit until preloading is done ... - [scheduler.py:573-do_play()]
engine | 2024-02-22 12:57:58,737:engine:INFO - PLAY: Wait a little bit until preloading is done ... - [scheduler.py:573-do_play()]
engine | 2024-02-22 12:58:00,740:engine:INFO - PLAY: Wait a little bit until preloading is done ... - [scheduler.py:573-do_play()]
engine | 2024-02-22 12:58:02,741:engine:INFO - PLAY: Wait a little bit until preloading is done ... - [scheduler.py:573-do_play()]
```
---
_Original ticket description, which had the same cause:_
The log file of engine is experiencing an overflow of repetitive log entries containing the message `PLAY: Wait a little bit until preloading is done ...`. I left engine running over night and hat 73 000 entries of only this message. This excessive logging is making it challenging to identify other important log information. I would suggest to optimize the logging to maintain clarity in the log file.1.0-alpha4 — Raving Raccoon 🤪🦝Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/135API: Update API client, after Steering provides valid schema2023-07-24T16:05:49+02:00David TrattnigAPI: Update API client, after Steering provides valid schema## Parent: aura#192+
After [Steering provides a schema](https://gitlab.servus.at/aura/steering/-/issues/154 'Valid schema for "/steering/api/v1/playout" endpoint and add it to the OpenAPI Specification'):
* [ ] update the schema in `en...## Parent: aura#192+
After [Steering provides a schema](https://gitlab.servus.at/aura/steering/-/issues/154 'Valid schema for "/steering/api/v1/playout" endpoint and add it to the OpenAPI Specification'):
* [ ] update the schema in `engine/schemas`.
* [ ] re-generate the API client
* [ ] update any code working with the API client, if needed1.0-alpha5Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/134Add Bandit code security linting2023-07-21T13:59:36+02:00David TrattnigAdd Bandit code security lintinghttps://github.com/PyCQA/bandithttps://github.com/PyCQA/bandit1.0-alpha3 — Playful Platypus ▶️🦦David TrattnigDavid Trattnighttps://gitlab.servus.at/aura/engine/-/issues/133Scheduling domain objects based on POPOs2023-08-04T13:51:50+02:00David TrattnigScheduling domain objects based on POPOsParent: #100+
---
- [x] Initial data structure
- [x] Docstrings
- [x] Transfer and adapt any methods from original models
- [x] Initial test casesParent: #100+
---
- [x] Initial data structure
- [x] Docstrings
- [x] Transfer and adapt any methods from original models
- [x] Initial test cases1.0-alpha3 — Playful Platypus ▶️🦦David TrattnigDavid Trattnighttps://gitlab.servus.at/aura/engine/-/issues/132API: Update value and data type for "duration" (Tank API) and "trackDuration"...2023-10-19T01:02:35+02:00David TrattnigAPI: Update value and data type for "duration" (Tank API) and "trackDuration" (Engine API)Parent: https://gitlab.servus.at/aura/aura/-/issues/215+
---
Compare outcome of https://gitlab.servus.at/aura/tank/-/issues/61
Include seconds and milliseconds.Parent: https://gitlab.servus.at/aura/aura/-/issues/215+
---
Compare outcome of https://gitlab.servus.at/aura/tank/-/issues/61
Include seconds and milliseconds.1.0-alpha3 — Playful Platypus ▶️🦦Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine/-/issues/131Virtual Timeslots: Remove workarounds and replace with Steering's native appr...2023-11-02T12:46:11+01:00David TrattnigVirtual Timeslots: Remove workarounds and replace with Steering's native approachParent: aura#176+
---
- Remove the config for station fallback show and current workaround to create virtual timeslots
- Compare the final implementation in Steering: steering#154
- After Steering `/playout` endpoint has a [valid schema...Parent: aura#176+
---
- Remove the config for station fallback show and current workaround to create virtual timeslots
- Compare the final implementation in Steering: steering#154
- After Steering `/playout` endpoint has a [valid schema](steering#154), also update the schema in `engine/schemas/openapi-steering.json`1.0-alpha5https://gitlab.servus.at/aura/engine/-/issues/130Use _id suffix for all object reference in REST APIs2023-06-09T18:58:13+02:00David TrattnigUse _id suffix for all object reference in REST APIsParent: aura#166+
---
After the Steering and Tank API got updated the client models should be updated too.Parent: aura#166+
---
After the Steering and Tank API got updated the client models should be updated too.1.0-alpha2 — ⚖️🐦 Precise PheasantDavid TrattnigDavid Trattnighttps://gitlab.servus.at/aura/engine/-/issues/129Deserialize API response using Steering/Tank OpenAPI Models2023-06-06T20:55:39+02:00David TrattnigDeserialize API response using Steering/Tank OpenAPI ModelsParent: aura#192+
---Parent: aura#192+
---1.0-alpha2 — ⚖️🐦 Precise PheasantDavid TrattnigDavid Trattnighttps://gitlab.servus.at/aura/engine/-/issues/128Add test coverage and display badge2024-02-23T18:52:12+01:00David TrattnigAdd test coverage and display badge1.0-alpha2 — ⚖️🐦 Precise PheasantDavid TrattnigDavid Trattnighttps://gitlab.servus.at/aura/engine/-/issues/127@Loxbie offered to have a look and may possibly take this task over.2023-11-09T11:28:59+01:00David Trattnig@Loxbie offered to have a look and may possibly take this task over.1.0-alpha3 — Playful Platypus ▶️🦦Ole Binderole@freirad.atOle Binderole@freirad.athttps://gitlab.servus.at/aura/engine/-/issues/126Update all APIs to return attributes / properties in camelCase notation2023-06-09T18:58:15+02:00David TrattnigUpdate all APIs to return attributes / properties in camelCase notationParent: aura#141+
---
- [x] API calls to Engine API
- [ ] API calls to Steering
- [ ] API calls to TankParent: aura#141+
---
- [x] API calls to Engine API
- [ ] API calls to Steering
- [ ] API calls to Tank1.0-alpha2 — ⚖️🐦 Precise PheasantDavid TrattnigDavid Trattnighttps://gitlab.servus.at/aura/engine/-/issues/125[EPIC] Basic test suite for Engine2024-02-28T22:07:54+01:00David Trattnig[EPIC] Basic test suite for EngineParent: aura#175+
---
Test suite to cover the most important cases.
**Please note:** The `clock.py` test cases can be skipped for now, since we will [remove this code altogether](https://gitlab.servus.at/aura/aura/-/issues/312).
### S...Parent: aura#175+
---
Test suite to cover the most important cases.
**Please note:** The `clock.py` test cases can be skipped for now, since we will [remove this code altogether](https://gitlab.servus.at/aura/aura/-/issues/312).
### Sub Tasks
- https://gitlab.servus.at/aura/engine/-/issues/144+
- https://gitlab.servus.at/aura/engine/-/issues/143+
- https://gitlab.servus.at/aura/engine/-/issues/142+
- https://gitlab.servus.at/aura/engine/-/issues/137+
- Other test cases which look meaningful and improve the overall test coverage1.0-alpha5Chris PastlChris Pastl