Add unified channel feed
This commit is contained in:
14
config.py
14
config.py
@@ -6,6 +6,9 @@ Environment Variables:
|
||||
ELASTIC_USERNAME / ELASTIC_PASSWORD: Optional basic auth credentials.
|
||||
ELASTIC_INDEX: Target index name (default: this_little_corner_py).
|
||||
LOCAL_DATA_DIR: Root folder containing JSON metadata (default: ../data/video_metadata).
|
||||
CHANNELS_PATH: Path to the canonical channel list (default: ./channels.yml).
|
||||
RSS_FEED_URL: Public URL/path for the unified RSS feed (default: /rss/youtube-unified).
|
||||
RSS_FEED_UPSTREAM: Base URL to proxy feed requests (default: http://localhost:8097).
|
||||
YOUTUBE_API_KEY: Optional API key for pulling metadata directly from YouTube.
|
||||
RATE_LIMIT_ENABLED: Toggle API rate limiting (default: 1).
|
||||
RATE_LIMIT_REQUESTS: Max requests per window per client (default: 60).
|
||||
@@ -74,6 +77,9 @@ class AppConfig:
|
||||
qdrant_vector_name: Optional[str]
|
||||
qdrant_vector_size: int
|
||||
qdrant_embed_model: str
|
||||
channels_path: Path
|
||||
rss_feed_url: str
|
||||
rss_feed_upstream: str
|
||||
|
||||
|
||||
def _env(name: str, default: Optional[str] = None) -> Optional[str]:
|
||||
@@ -110,6 +116,11 @@ def load_config() -> AppConfig:
|
||||
requests=max(int(_env("RATE_LIMIT_REQUESTS", "60")), 0),
|
||||
window_seconds=max(int(_env("RATE_LIMIT_WINDOW_SECONDS", "60")), 1),
|
||||
)
|
||||
channels_path = Path(
|
||||
_env("CHANNELS_PATH", str(Path(__file__).parent / "channels.yml"))
|
||||
).expanduser()
|
||||
rss_feed_url = _env("RSS_FEED_URL", "/rss/youtube-unified")
|
||||
rss_feed_upstream = _env("RSS_FEED_UPSTREAM", "http://localhost:8097")
|
||||
return AppConfig(
|
||||
elastic=elastic,
|
||||
data=data,
|
||||
@@ -120,6 +131,9 @@ def load_config() -> AppConfig:
|
||||
qdrant_vector_name=_env("QDRANT_VECTOR_NAME"),
|
||||
qdrant_vector_size=int(_env("QDRANT_VECTOR_SIZE", "1024")),
|
||||
qdrant_embed_model=_env("QDRANT_EMBED_MODEL", "BAAI/bge-large-en-v1.5"),
|
||||
channels_path=channels_path,
|
||||
rss_feed_url=rss_feed_url or "",
|
||||
rss_feed_upstream=rss_feed_upstream or "",
|
||||
)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user