feat: add PostgreSQL persistence and unified sync endpoint

- Add sqlx with PostgreSQL support for database operations
- Create DbService with artist/album upsert and listing methods
- Add database schema (14 tables) in containers/init.sql
- Add library controller (GET /api/library/artists, /albums, /stats)
- Merge sync_artist + ingest into single POST /api/sync endpoint
- Support configurable sync: download (bool), store (bool), album filter
- Connect to database at startup with graceful fallback
This commit is contained in:
Alexander
2026-04-29 10:06:01 +02:00
parent 3aaeade4d3
commit f24543f401
12 changed files with 1590 additions and 84 deletions
+1
View File
@@ -25,6 +25,7 @@ roxmltree = "0.20"
base64 = "0.22"
chrono = { version = "0.4", features = ["serde"] }
clap = { version = "4", features = ["derive"] }
sqlx = { version = "0.8", features = ["runtime-tokio", "postgres", "uuid", "chrono", "json"] }
tonic = "0.12"
prost = "0.13"