AURA issueshttps://gitlab.servus.at/groups/aura/-/issues2024-03-28T20:39:34+01:00https://gitlab.servus.at/aura/aura/-/issues/332Error when starting dashboard container during installation2024-03-28T20:39:34+01:00Martina Müllermartina@freirad.atError when starting dashboard container during installationI'm currently unable to install aura to a new server, which may be related to nginx.
## Steps to Reproduce
Installed alpha3 twice, once as sudo user, once as root.
Also installed alpha2 out of curiosity.
Both according to the relevant ...I'm currently unable to install aura to a new server, which may be related to nginx.
## Steps to Reproduce
Installed alpha3 twice, once as sudo user, once as root.
Also installed alpha2 out of curiosity.
Both according to the relevant docs.
At first I thought it might be a system issue but after reinstalling completely new and installing the alpha2 version (all unsuccessfully) I'm not sure about that.
## Actual Result
All installations failed at `docker compose up -d` / `make aura-web.up` when starting the containers.
All with the following message:
```
[+] Running 6/7
✔ Container dashboard-clock Started 14.6s
✔ Container steering-postgres Healthy 0.0s
✘ Container dashboard Error 104.6s
✔ Container tank-postgres Healthy 44.1s
✔ Container steering Healthy 46.6s
✔ Container tank Healthy 68.7s
⠏ Container aura-web-nginx-1 Created 93.9s
dependency failed to start: container dashboard is unhealthy
```
## Logs & configuration
logs of `dashboard`:
```
dashboard | awk: cmd. line:1: Unexpected token
dashboard | generated nginx-config
dashboard | server {
dashboard | listen 80;
dashboard | server_name ${AURA_HOST};
dashboard |
dashboard | location / {
dashboard | root /usr/share/nginx/html;
dashboard | index index.html;
dashboard | try_files $uri $uri/ /index.html;
dashboard | }
dashboard | }
dashboard | 2024/03/28 15:42:17 [notice] 395#395: using the "epoll" event method
dashboard | 2024/03/28 15:42:17 [notice] 395#395: nginx/1.24.0
dashboard | 2024/03/28 15:42:17 [notice] 395#395: built by gcc 12.2.1 20220924 (Alpine 12.2.1_git20220924-r4)
dashboard | 2024/03/28 15:42:17 [notice] 395#395: OS: Linux 6.1.0-18-amd64
dashboard | 2024/03/28 15:42:17 [notice] 395#395: getrlimit(RLIMIT_NOFILE): 1048576:1048576
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker processes
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker process 396
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker process 397
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker process 398
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker process 399
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker process 400
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker process 401
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker process 402
dashboard | 2024/03/28 15:42:17 [notice] 395#395: start worker process 403
```
In the `nginx` logs there was nothing written.
Only relevant changes to `.env` file. Everything else updated were the OIDC client ids and passwords, usernames, emails:
```
# Change to your custom domain name
AURA_HOST_NAME=aura-test.buero.freirad.at
# Set to http if you don't want to use TLS
AURA_HOST_PROTO=http
# Disable if you want to handle ssl yourself (e.g if you are deploying behind a reverse proxy)
AURA_HOST_CERTBOT_ENABLE=false
```
## Environment
Operating system: Debian 12
Permissions were all in order, no permission errors.
Installed on a completely fresh server.1.0-alpha4 — Raving Raccoon 🤪🦝Kay EffenbergerKay Effenbergerhttps://gitlab.servus.at/aura/aura/-/issues/331Docs: Add info how to run Docker setups as daemon2024-03-28T13:29:19+01:00David TrattnigDocs: Add info how to run Docker setups as daemon- https://docs.docker.com/config/daemon/
- https://docs.docker.com/config/daemon/systemd/- https://docs.docker.com/config/daemon/
- https://docs.docker.com/config/daemon/systemd/1.0-alpha5Chris PastlChris Pastlhttps://gitlab.servus.at/aura/steering/-/issues/215Implement bulk delete endpoints2024-03-27T18:42:05+01:00Konrad MohrfeldtImplement bulk delete endpointsSome code parts of the dashboard, especially in the calendar, will dispatch hundreds of `DELETE` requests, i.e. when removing all future timeslots for a schedule. This is a questionable use of server resources and has a very easy solutio...Some code parts of the dashboard, especially in the calendar, will dispatch hundreds of `DELETE` requests, i.e. when removing all future timeslots for a schedule. This is a questionable use of server resources and has a very easy solution: bulk delete requests.
Instead of dispatching multiple `DELETE` requests we dispatch a single `DELETE` request to the collection endpoint. Every item that is left after filtering the queryset is deleted. This should be quite easy to implement because we can re-use the FilterSet class of the list-operation.
Example for bulk deletion of future timeslots:
`DELETE /api/v1/timeslots?scheduleIds=4&startsAfter=2024-03-27T19:00:00Z`
This query would delete all timeslots that belong to the schedule with id 4 and are planned to start after March 27, 2024 at 19:00:00 UTC.https://gitlab.servus.at/aura/steering/-/issues/214Attach notes to timeslots upon creation2024-03-28T21:36:35+01:00Ernesto Rico SchmidtAttach notes to timeslots upon creationAs discussed with @kmohrf , upon creation of a `Timeslot` a `Note` should be created and attached to it.As discussed with @kmohrf , upon creation of a `Timeslot` a `Note` should be created and attached to it.1.0-alpha4 — Raving Raccoon 🤪🦝Ernesto Rico SchmidtErnesto Rico Schmidthttps://gitlab.servus.at/aura/engine-core/-/issues/74crash related to jack2024-03-28T13:30:44+01:00Chris Pastlcrash related to jackI noticed a crash while liquidsoap tries to connect to the jack audio server. For some reason, the audio device could not be accessed although it was connected to the host. No chance to bring up engine-core again using `docker compose up...I noticed a crash while liquidsoap tries to connect to the jack audio server. For some reason, the audio device could not be accessed although it was connected to the host. No chance to bring up engine-core again using `docker compose up -d` - the only workaround was to reboot the system.
I assume that a socket was still open and did not close correctly after a previous crash.
```
engine-core | 2024-03-21T21:08:45.509414430Z 2024/03/21 22:08:45 [fallback_folder:4] Queued 1 requests
engine-core | 2024-03-21T21:08:45.637452463Z ERR: jack_wrapper.c::JACK_OpenDevice(804) jack server not running?
engine-core | 2024-03-21T21:08:45.637469226Z ERR: jack_wrapper.c::JACK_shutdown(750) unable to reconnect with jack
engine-core | 2024-03-21T21:08:45.637472405Z ERR: jack_wrapper.c::JACK_OpenDevice(804) jack server not running?
engine-core | 2024-03-21T21:08:45.637474943Z ERR: jack_wrapper.c::JACK_shutdown(750) unable to reconnect with jack
engine-core | 2024-03-21T21:08:45.637477449Z ERR: jack_wrapper.c::JACK_Read(1296) Device not connected to jack!
```1.0-alpha4 — Raving Raccoon 🤪🦝https://gitlab.servus.at/aura/dashboard/-/issues/285Expanding single playlist items without duration information, does not work a...2024-03-26T13:59:32+01:00David TrattnigExpanding single playlist items without duration information, does not work anymoreThe new media source UI does not auto-expand single entries without duration information anymore. Instead it prints "unknown duration". This was previously implemented in dashboard#49+
Sidenote: Expanding such playlist items was nativel...The new media source UI does not auto-expand single entries without duration information anymore. Instead it prints "unknown duration". This was previously implemented in dashboard#49+
Sidenote: Expanding such playlist items was natively handled by Tank. So probably the provided value only needs to be taken into consideration.
![image](/uploads/76aceaa6822049d73dc01ffa5911a214/image.png){width=33%}1.0-alpha5Konrad MohrfeldtKonrad Mohrfeldthttps://gitlab.servus.at/aura/engine-core/-/issues/73termination after closing ssh connection2024-03-28T13:30:40+01:00Chris Pastltermination after closing ssh connectionI logged in via ssh to the aura-playout host to start the docker containers.
Usually, all containers stay running after logging out again.
In some cases, engine-core terminated immediately after closing the ssh connection.
There's no s...I logged in via ssh to the aura-playout host to start the docker containers.
Usually, all containers stay running after logging out again.
In some cases, engine-core terminated immediately after closing the ssh connection.
There's no special termination message, but the logs show no further activity after calling `exit`:
`history`
```
6013 2024-03-21 21:45 exit
```
`cat logs/engine-core.log | grep "2024/03/21 21:4"`
```
2024/03/21 21:45:06 [decoder.video.metadata:4] Unsupported MIME type for "/var/audio/fallback/Sine432.mp3": audio/mpeg!
2024/03/21 21:45:06 [request:5] Resolved to [[/var/audio/fallback/Sine432.mp3]].
2024/03/21 21:45:06 [request:5] Resolving request [[/var/audio/fallback/Sine432.mp3]].
2024/03/21 21:45:06 [request:5] Resolved to [[/var/audio/fallback/Sine432.mp3]].
2024/03/21 21:45:06 [fallback_folder:4] Queued 1 requests
2024/03/21 21:45:06 [lang:3] Successfully posted playlog to Engine API.
2024/03/21 21:45:06 [fallback_folder:5] Got metadata at position 0: calling handlers...
2024/03/21 21:45:06 [mksafe:5] Got metadata at position 0: calling handlers...
2024/03/21 21:45:06 [fallback-source:5] Got metadata at position 0: calling handlers...
➜ aura git:(1.0.0-alpha3) ✗
```
Current workaround: execute the start command inside a `screen` session and keep this session open. Then engine-core stays running after closing the ssh connection.1.0-alpha4 — Raving Raccoon 🤪🦝Chris PastlChris Pastlhttps://gitlab.servus.at/aura/tank/-/issues/71Add targets "make test" and "make coverage", add badges to README.md2024-03-21T17:34:23+01:00David TrattnigAdd targets "make test" and "make coverage", add badges to README.mdParent: aura#175+
---
- Add targets "make test" and "make coverage"
- Add all the badges to the README.md header as in other repos:
![image](/uploads/6c756d15c9dc4d098f83f4081770fc80/image.png)Parent: aura#175+
---
- Add targets "make test" and "make coverage"
- Add all the badges to the README.md header as in other repos:
![image](/uploads/6c756d15c9dc4d098f83f4081770fc80/image.png)1.0-alpha4 — Raving Raccoon 🤪🦝Martina Müllermartina@freirad.atMartina Müllermartina@freirad.athttps://gitlab.servus.at/aura/aura/-/issues/328AURA Web: Review, rework and merge certain test configuration into relevant r...2024-03-19T14:49:33+01:00David TrattnigAURA Web: Review, rework and merge certain test configuration into relevant repositoriesParent: aura-tests#5+
---
Some hints can be found [here](https://gitlab.servus.at/aura/dashboard/-/blob/main/tests/docker-compose.yml?ref_type=heads#L20-39) and [there](https://gitlab.servus.at/aura/dashboard/-/blob/main/tests/docker-co...Parent: aura-tests#5+
---
Some hints can be found [here](https://gitlab.servus.at/aura/dashboard/-/blob/main/tests/docker-compose.yml?ref_type=heads#L20-39) and [there](https://gitlab.servus.at/aura/dashboard/-/blob/main/tests/docker-compose.yml?ref_type=heads#L48-107).
<mark>To be investigated and discussed by @kmohrf and @eigenwijsje</mark>
## Related
- aura-tests#3+1.0-alpha5Konrad MohrfeldtKonrad Mohrfeldthttps://gitlab.servus.at/aura/aura/-/issues/327aura-web: can't disable certbot2024-03-20T21:06:13+01:00Chris Pastlaura-web: can't disable certbotI ran aura-web using https and certbot before and needed to switch-back to http. So I commented out the relevant lines in the .env file - which are the default values:
```
# Change to your custom domain name
AURA_HOST_NAME=aura.fro.at
# ...I ran aura-web using https and certbot before and needed to switch-back to http. So I commented out the relevant lines in the .env file - which are the default values:
```
# Change to your custom domain name
AURA_HOST_NAME=aura.fro.at
# Set to http if you don't want to use TLS
# AURA_HOST_PROTO=http
# Disable if you want to handle ssl yourself (e.g if you are deploying behind a reverse proxy)
# AURA_HOST_CERTBOT_ENABLE=false
```
Since these changes had no effect, I removed all volumes at first - without success. So I hoped that `docker system prune -a` will fix the problem - but nginx started certbot again.
The only workaround was to either comment out the relevant lines in `config/services/nginx/run.sh` or to override the relevant line in `config/aura-web/docker-compose.yml`.
```
nginx-1 | 2024-03-18T18:52:50.710415965Z generated nginx-config
nginx-1 | 2024-03-18T18:52:50.710446943Z Running Certbot
nginx-1 | 2024-03-18T18:52:50.921482399Z Saving debug log to /var/log/letsencrypt/letsencrypt.log
nginx-1 | 2024-03-18T18:52:51.992607388Z Unable to register an account with ACME server. The ACME server believes admin@example.com is an invalid email address. Please ensure it is a valid email and attempt registration again.
nginx-1 | 2024-03-18T18:52:51.992632295Z Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.
```1.0-alpha4 — Raving Raccoon 🤪🦝Kay EffenbergerKay Effenbergerhttps://gitlab.servus.at/aura/aura/-/issues/326Running aura-web behind a reverse proxy with HTTP(S) port forwarding2024-03-20T21:05:02+01:00Chris PastlRunning aura-web behind a reverse proxy with HTTP(S) port forwardingWe need to run `aura-web` behind a reverse proxy with port forwarding and -translation; meaning requests to `https://aura.fro.at:8443` will be forwarded to the internal host running aura-web on port 80.
While the dashboard login page ca...We need to run `aura-web` behind a reverse proxy with port forwarding and -translation; meaning requests to `https://aura.fro.at:8443` will be forwarded to the internal host running aura-web on port 80.
While the dashboard login page can be reached via this url from the internet, nothing happens when the "Anmelden" button is pressed. Since I ran into related problems while testing, I assumed an issue regarding the callback URLs. So changed these envars in the config - but without success yet:
```
AURA_TANK_CALLBACK_BASE_URL=https://aura.fro.at:8443
AURA_DASHBOARD_CALLBACK_BASE_URL=https://aura.fro.at:8443
```
(It's btw not clear to me if these settings are reflected immediately after restarting aura-web)
Is there a way to fix this?1.0-alpha4 — Raving Raccoon 🤪🦝https://gitlab.servus.at/aura/dashboard/-/issues/284Add "Administration" button to sidebar, linking to `/steering/admin`2024-03-18T13:11:23+01:00David TrattnigAdd "Administration" button to sidebar, linking to `/steering/admin`Parent: aura#221+
---
See spec in parent.
Remove the link in the (kinda hidden) footer.Parent: aura#221+
---
See spec in parent.
Remove the link in the (kinda hidden) footer.1.0-alpha5Konrad MohrfeldtKonrad Mohrfeldthttps://gitlab.servus.at/aura/dashboard-clock/-/issues/30Retrieve all configuration via Radio Station Settings2024-03-21T18:54:56+01:00David TrattnigRetrieve all configuration via Radio Station SettingsClean up current confusing configuration via env vars, and drive settings solely from the Radio Station Administration API endpoint.
# Dependency
- https://gitlab.servus.at/aura/aura/-/issues/221+Clean up current confusing configuration via env vars, and drive settings solely from the Radio Station Administration API endpoint.
# Dependency
- https://gitlab.servus.at/aura/aura/-/issues/221+1.0-alpha8David TrattnigDavid Trattnighttps://gitlab.servus.at/aura/dashboard-clock/-/issues/29Integrate Studio Clock into Dashboard2024-03-18T12:44:14+01:00David TrattnigIntegrate Studio Clock into Dashboard1.1David TrattnigDavid Trattnighttps://gitlab.servus.at/aura/dashboard/-/issues/283Use channel names from radio station settings and use their IDs as values for...2024-03-18T12:20:08+01:00David TrattnigUse channel names from radio station settings and use their IDs as values for Tank "line://" source prefixesParent: aura#242+
---
## Dependency
- aura#221+
- #282+Parent: aura#242+
---
## Dependency
- aura#221+
- #282+1.0-alpha5Konrad MohrfeldtKonrad Mohrfeldthttps://gitlab.servus.at/aura/dashboard/-/issues/282Read radio station settings from Steering API and store/cache locally2024-03-18T12:20:09+01:00David TrattnigRead radio station settings from Steering API and store/cache locallyParent: aura#242+
---
## Dependency
- aura#221+Parent: aura#242+
---
## Dependency
- aura#221+1.0-alpha5Konrad MohrfeldtKonrad Mohrfeldthttps://gitlab.servus.at/aura/engine-recorder/-/issues/44Reduce Build Time by using Docker buildx caching options2024-03-18T11:45:05+01:00Kay EffenbergerReduce Build Time by using Docker buildx caching optionsMulti Arch builds take a quite long time to build. We can take usage of build caching functions to reduce build time.
https://docs.docker.com/reference/cli/docker/buildx/build/#cache-fromMulti Arch builds take a quite long time to build. We can take usage of build caching functions to reduce build time.
https://docs.docker.com/reference/cli/docker/buildx/build/#cache-fromKay EffenbergerKay Effenbergerhttps://gitlab.servus.at/aura/steering/-/issues/211Extend Steering API documentation by adding relevant annotations2024-03-14T16:19:03+01:00David TrattnigExtend Steering API documentation by adding relevant annotations1.0-alpha4 — Raving Raccoon 🤪🦝Chris PastlChris Pastlhttps://gitlab.servus.at/aura/engine-core/-/issues/71Refactor creation of stream endpoints2024-03-13T13:24:02+01:00Ole Binderole@freirad.atRefactor creation of stream endpointsAt the moment the code for the stream endpoints (`s0,s1,s2,s3,s4`) is just copy-pasted code. In addition only the endpoint `s0` has environment variables mapped to its settings.At the moment the code for the stream endpoints (`s0,s1,s2,s3,s4`) is just copy-pasted code. In addition only the endpoint `s0` has environment variables mapped to its settings.Ole Binderole@freirad.atOle Binderole@freirad.athttps://gitlab.servus.at/aura/aura-tests/-/issues/5[EPIC] AURA Docker Compose Integration Test Suite2024-03-19T14:46:32+01:00David Trattnig[EPIC] AURA Docker Compose Integration Test SuiteParent: aura#175+
---
There is a set of integration tests already provided in the Dashboard repository. These tests should be de-coupled, shifting responsibility away from Dashboard.
Initially meant for services in AURA Web, but can be...Parent: aura#175+
---
There is a set of integration tests already provided in the Dashboard repository. These tests should be de-coupled, shifting responsibility away from Dashboard.
Initially meant for services in AURA Web, but can be expanded to other service bundles like AURA Playout in the future.
The goal is to test the full chain of services.
## Sub Tasks
Before proceeding we need to clarify the overall cross repository pipeline architecture. A first step can be to explore the following:
- https://gitlab.servus.at/aura/aura-tests/-/issues/4+
Other sub tasks include:
- https://gitlab.servus.at/aura/aura/-/issues/324+
- #1+
- #3+
- https://gitlab.servus.at/aura/aura/-/issues/328+
We also need to clarify how this initiative duplicates aims of this task:
- https://gitlab.servus.at/aura/aura/-/issues/323+1.0-alpha5