organize configs env and docs

This commit is contained in:
mhdzumair
2024-04-14 22:33:10 +05:30
parent 6b8a488fa0
commit c806a25d5d
2 changed files with 48 additions and 22 deletions
+33 -20
View File
@@ -2,38 +2,42 @@ from pydantic_settings import BaseSettings
class Settings(BaseSettings):
# Database and cache settings
mongo_uri: str
db_max_connections: int = 50
redis_url: str = "redis://redis-service:6379"
git_rev: str = "stable"
secret_key: str
# API and service URLs
host_url: str = "https://mediafusion.fun"
logging_level: str = "INFO"
scraper_proxy_url: str | None = None
torrentio_url: str = "https://torrentio.strem.fun"
is_scrap_from_torrentio: bool = False
torrentio_search_interval_days: int = 3
prowlarr_url: str = "http://prowlarr-service:9696"
# External API keys and secrets
secret_key: str
prowlarr_api_key: str | None = None
premiumize_oauth_client_id: str | None = None
premiumize_oauth_client_secret: str | None = None
prowlarr_url: str = "http://prowlarr-service:9696"
prowlarr_api_key: str | None = None
prowlarr_search_interval_hour: int = 24
prowlarr_immediate_max_process: int = 10
prowlarr_immediate_max_process_time: int = 15
prowlarr_live_title_search: bool = False
adult_content_regex_keywords: str = r"(^|\b|\s)(18\+|adult|porn|sex|xxx|nude|naked|erotic|sexy|18\s*plus)(\b|\s|$|[._-])"
# Logging and revision settings
logging_level: str = "INFO"
git_rev: str = "stable"
# Feature toggles
is_scrap_from_torrentio: bool = False
enable_rate_limit: bool = True
api_password: str | None = None
is_public_instance: bool = False
meta_cache_ttl: int = 1800 # 30 minutes
validate_m3u8_urls_liveness: bool = True
adult_content_regex_keywords: str = r"(^|\b|\s)(18\+|adult|porn|sex|xxx|nude|naked|erotic|sexy|18\s*plus)(\b|\s|$|[._-])"
prowlarr_live_title_search: bool = False
# Scheduler settings
disable_all_scheduler: bool = False
tamilmv_scheduler_crontab: str = "0 */3 * * *"
disable_tamilmv_scheduler: bool = False
tamil_blasters_scheduler_crontab: str = "0 */6 * * *"
disable_tamil_blasters_scheduler: bool = False
formula_tgx_scheduler_crontab: str = "0 */12 * * *"
formula_tgx_scheduler_crontab: str = "*/30 * * * *"
disable_formula_tgx_scheduler: bool = False
mhdtvworld_scheduler_crontab: str = "0 0 * * 5"
disable_mhdtvworld_scheduler: bool = False
@@ -43,15 +47,24 @@ class Settings(BaseSettings):
disable_tamilultra_scheduler: bool = False
validate_tv_streams_in_db_crontab: str = "0 */6 * * *"
disable_validate_tv_streams_in_db: bool = False
sport_video_scheduler_crontab: str = "20 * * * *"
sport_video_scheduler_crontab: str = "*/20 * * * *"
disable_sport_video_scheduler: bool = False
streamed_scheduler_crontab: str = "*/15 * * * *"
disable_streamed_scheduler: bool = False
mrgamingstreams_scheduler_crontab: str = "*/15 * * * *"
disable_mrgamingstreams_scheduler: bool = (
True # Disabled it due to the site being down.
)
disable_all_scheduler: bool = False
disable_mrgamingstreams_scheduler: bool = True # Disabled due to site being down.
crictime_scheduler_crontab: str = "*/15 * * * *"
disable_crictime_scheduler: bool = False
# Time-related settings
torrentio_search_interval_days: int = 3
prowlarr_search_interval_hour: int = 24
prowlarr_immediate_max_process: int = 10
prowlarr_immediate_max_process_time: int = 15
meta_cache_ttl: int = 1800 # 30 minutes in seconds
# Optional security settings
api_password: str | None = None
class Config:
env_file = ".env"
+15 -2
View File
@@ -46,14 +46,27 @@ This guide describes the environment variables available in MediaFusion for conf
#### Scheduler Crontabs
> [!TIP]
> To setup the scheduler crontabs, you can use [crontab.guru](https://crontab.guru/) to generate the crontab expressions.
- **disable_all_scheduler** (default: `False`): Disable all schedulers.
- **tamilmv_scheduler_crontab** (default: `"0 */3 * * *"`): Scheduler for TamilMV.
- **disable_tamilmv_scheduler** (default: `False`): Disable TamilMV scheduler.
- **tamil_blasters_scheduler_crontab** (default: `"0 */6 * * *"`): Scheduler for Tamil Blasters.
- **formula_tgx_scheduler_crontab** (default: `"0 */12 * * *"`): Scheduler for Formula TGX.
- **disable_tamil_blasters_scheduler** (default: `False`): Disable Tamil Blasters scheduler.
- **tamilultra_scheduler_crontab** (default: `"0 8 * * *"`): Scheduler for TamilUltra.
- **disable_tamilultra_scheduler** (default: `False`): Disable TamilUltra scheduler.
- **formula_tgx_scheduler_crontab** (default: `"*/30 * * * *"`): Scheduler for Formula TGX.
- **disable_formula_tgx_scheduler** (default: `False`): Disable Formula TGX scheduler.
- **mhdtvworld_scheduler_crontab** (default: `"0 0 * * 5"`): Scheduler for MHDTVWorld.
- **disable_mhdtvworld_scheduler** (default: `False`): Disable MHDTVWorld scheduler.
- **mhdtvsports_scheduler_crontab** (default: `"0 10 * * *"`): Scheduler for MHDTVSports.
- **disable_mhdtvsports_scheduler** (default: `False`): Disable MHDTVSports scheduler.
- **streamed_scheduler_crontab** (default: `"*/15 * * * *"`): Scheduler for Streamed.su Sports Events.
- **disable_streamed_scheduler** (default: `False`): Disable Streamed.su scheduler.
- **mrgamingstreams_scheduler_crontab** (default: `"*/15 * * * *"`): Scheduler for MrGamingStreams Sports Events.
- **disable_mrgamingstreams_scheduler** (default: `True`): Disable MrGamingStreams scheduler.
- **sport_video_scheduler_crontab** (default: `"*/20 * * * *"`): Scheduler for Sport Video.
- **disable_sport_video_scheduler** (default: `False`): Disable Sport Video scheduler.
- **crictime_scheduler_crontab** (default: `"*/15 * * * *"`): Scheduler for Crictime.
- **disable_crictime_scheduler** (default: `False`): Disable Crictime scheduler.
### How to Configure