All checks were successful
build-and-push / build (push) Successful in 12s
- settings.json i /data (UI-värden har företräde framför env), hemligheter maskeras i GET (bara apiKeySet-flagga) - POST /api/settings/test kör live-test per tjänst: Gemini (nyckel+modell), Jellyfin (System/Info + användarlista för dropdown), Lidarr, Youtubarr (healthz + db-mount) - Inställningssida (kugghjulet): Spara & testa i samma steg per sektion, Jellyfin-användarväljare fylls från lyckat test - 6 nya tester, totalt 17 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01824ZrvG2mDYYrmwqypLNup
29 lines
936 B
JavaScript
29 lines
936 B
JavaScript
export function loadConfig(env = process.env) {
|
|
return {
|
|
port: Number(env.PORT ?? 3000),
|
|
host: env.HOST ?? '0.0.0.0',
|
|
appPassword: env.APP_PASSWORD ?? '',
|
|
sessionSecret: env.SESSION_SECRET ?? '',
|
|
dataDir: env.DATA_DIR ?? '/data',
|
|
lidarr: {
|
|
url: env.LIDARR_URL ?? 'http://lidarr:8686',
|
|
apiKey: env.LIDARR_API_KEY ?? '',
|
|
qualityProfileId: Number(env.LIDARR_QUALITY_PROFILE_ID ?? 3),
|
|
metadataProfileId: Number(env.LIDARR_METADATA_PROFILE_ID ?? 1),
|
|
rootFolder: env.LIDARR_ROOT_FOLDER ?? '/music',
|
|
},
|
|
jellyfin: {
|
|
url: env.JELLYFIN_URL ?? 'http://jellyfin:8096',
|
|
apiKey: env.JELLYFIN_API_KEY ?? '',
|
|
},
|
|
gemini: {
|
|
apiKey: env.GEMINI_API_KEY ?? '',
|
|
model: env.GEMINI_MODEL ?? 'gemini-2.5-flash',
|
|
},
|
|
youtubarr: {
|
|
url: env.YOUTUBARR_URL ?? 'http://youtubarr',
|
|
dbPath: env.YOUTUBARR_DB ?? '/youtubarr-data/db.sqlite3',
|
|
},
|
|
}
|
|
}
|