initial commit

This commit is contained in:
2025-03-18 20:32:17 +05:00
commit 15a5dad514
37 changed files with 19595 additions and 0 deletions

43
api/api/config/default.py Normal file
View File

@@ -0,0 +1,43 @@
import uuid
from os import environ
from pydantic import BaseModel
from pydantic_settings import BaseSettings
class DbCredentialsSchema(BaseModel):
host: str
user: str
password: str
database: str
port: int
class DefaultSettings(BaseSettings):
ENV: str = environ.get("ENV", "local")
PATH_PREFIX: str = environ.get("PATH_PREFIX", "/api/v1")
APP_HOST: str = environ.get("APP_HOST", "http://127.0.0.1")
APP_PORT: int = int(environ.get("APP_PORT", 8000))
APP_ID: uuid.UUID = environ.get("APP_ID", uuid.uuid4())
LOGS_STORAGE_PATH: str = environ.get("LOGS_STORAGE_PATH", "storage/logs")
MYSQL_DB: str = environ.get("MYSQL_DB", "connect_test")
MYSQL_HOST: str = environ.get("MYSQL_HOST", "localhost")
MYSQL_USER: str = environ.get("MYSQL_USER", "connect")
MYSQL_PORT: int = int(environ.get("MYSQL_PORT", "3306")[-4:])
MYSQL_PASSWORD: str = environ.get("MYSQL_PASSWORD", "hackme")
CONNECTION_POOL_SIZE: int = int(environ.get("CONNECTION_POOL_SIZE", "30"))
CONNECTION_OVERFLOW: int = int(environ.get("CONNECTION_OVERFLOW", "100"))
DOMAIN: str = environ.get("DOMAIN", "localhost")
BROKER_PROTOCOL: str = environ.get("BROKER_PROTOCOL", "amqp")
BROKER_HOST: str = environ.get("BROKER_HOST", "localhost")
BROKER_USER: str = environ.get("BROKER_USER", "guest")
BROKER_PORT: int = int(environ.get("BROKER_PORT", "5672"))
BROKER_PASSWORD: str = environ.get("BROKER_PASSWORD", "guest")
BROKER_RABBITMQ_VHOST: str = environ.get("BROKER_RABBITMQ_VHOST", "")
class Config:
# env_file = "../.env"
env_file_encoding = "utf-8"