Initial commit
This commit is contained in:
57
app/config.py
Normal file
57
app/config.py
Normal file
@@ -0,0 +1,57 @@
|
||||
import os
|
||||
import logging
|
||||
from pathlib import Path
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class Config:
|
||||
"""Gestion de la configuration de l'application"""
|
||||
|
||||
def __init__(self):
|
||||
# Configuration Jackett
|
||||
self.jackett_url = os.getenv('JACKETT_URL', '')
|
||||
self.jackett_api_key = os.getenv('JACKETT_API_KEY', '')
|
||||
|
||||
# Configuration Prowlarr
|
||||
self.prowlarr_url = os.getenv('PROWLARR_URL', '')
|
||||
self.prowlarr_api_key = os.getenv('PROWLARR_API_KEY', '')
|
||||
|
||||
# Configuration TMDb
|
||||
self.tmdb_api_key = os.getenv('TMDB_API_KEY', '')
|
||||
|
||||
# Configuration Last.fm
|
||||
self.lastfm_api_key = os.getenv('LASTFM_API_KEY', '')
|
||||
|
||||
# Chemins
|
||||
self.config_dir = Path('/app/config')
|
||||
self.logs_dir = Path('/app/logs')
|
||||
|
||||
# Création des dossiers si nécessaire
|
||||
self.config_dir.mkdir(parents=True, exist_ok=True)
|
||||
self.logs_dir.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
# Validation
|
||||
self._validate()
|
||||
|
||||
def _validate(self):
|
||||
"""Valide la configuration"""
|
||||
has_jackett = self.jackett_url and self.jackett_api_key
|
||||
has_prowlarr = self.prowlarr_url and self.prowlarr_api_key
|
||||
|
||||
if not has_jackett and not has_prowlarr:
|
||||
logger.warning("⚠️ Aucun indexer configuré ! Configurer JACKETT ou PROWLARR")
|
||||
|
||||
if has_jackett:
|
||||
logger.info(f"✅ Jackett configuré: {self.jackett_url}")
|
||||
|
||||
if has_prowlarr:
|
||||
logger.info(f"✅ Prowlarr configuré: {self.prowlarr_url}")
|
||||
|
||||
@property
|
||||
def has_jackett(self):
|
||||
return bool(self.jackett_url and self.jackett_api_key)
|
||||
|
||||
@property
|
||||
def has_prowlarr(self):
|
||||
return bool(self.prowlarr_url and self.prowlarr_api_key)
|
||||
Reference in New Issue
Block a user