24 lines
764 B
Python
24 lines
764 B
Python
from pathlib import Path
|
|
from typing import Optional, Literal
|
|
from pydantic import BaseSettings, AnyHttpUrl
|
|
|
|
class Config(BaseSettings):
|
|
MASTO_URL:AnyHttpUrl
|
|
MASTO_TOKEN:str
|
|
LOGDIR:Path=Path().home() / '.mastobridge'
|
|
LOGLEVEL:Literal['DEBUG','INFO','WARNING','ERROR','EXCEPTION']='INFO'
|
|
STREAM_MODE:Literal['list', 'home'] = 'list'
|
|
ENABLE_GIT:bool=False
|
|
ENABLE_CALDAV:bool=False
|
|
GIT_REPO:Optional[Path]=None
|
|
GIT_REMOTE_URL:Optional[AnyHttpUrl]=None
|
|
CALDAV_URL:Optional[AnyHttpUrl] = None
|
|
CALDAV_USER:Optional[str]=None
|
|
CALDAV_PASSWORD:Optional[str]=None
|
|
CALDAV_CALENDAR_NAME:Optional[str]=None
|
|
|
|
|
|
class Config:
|
|
env_file = '.env'
|
|
env_file_encoding = 'utf-8'
|
|
env_prefix = "MASTOBRIDGE_"
|