Initial parser admin implementation

This commit is contained in:
Your Name
2026-06-15 21:14:07 +05:00
commit 59c899dc9c
51 changed files with 7052 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
from __future__ import annotations
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
app_env: str = "production"
app_secret_key: str = "change-me"
admin_bootstrap_login: str = "admin"
admin_bootstrap_password: str = ""
db_host: str = "localhost"
db_port: int = 5432
db_name: str = "vk_parser"
db_user: str = "vk_parser_user"
db_password: str = ""
vk_access_token: str = ""
vk_group_access_token: str = ""
vk_api_version: str = "5.199"
vk_storage_group_id: int = 0
tg_bot_token: str = ""
tg_media_channel_id: str = ""
local_bot_api_url: str = ""
admin_host: str = "0.0.0.0"
admin_port: int = 8080
log_level: str = "INFO"
model_config = SettingsConfigDict(env_file=".env", env_file_encoding="utf-8", extra="ignore")
@property
def db_dsn(self) -> str:
return (
f"postgresql://{self.db_user}:{self.db_password}"
f"@{self.db_host}:{self.db_port}/{self.db_name}"
)
@property
def vk_storage_owner_id(self) -> int:
return -abs(int(self.vk_storage_group_id))
settings = Settings()