Initial Source code version

This commit is contained in:
Frank Agerholm 2025-12-11 12:07:17 +01:00
commit d979374cbc
23 changed files with 2628 additions and 0 deletions

15
app/config.py Normal file
View file

@ -0,0 +1,15 @@
from pydantic import BaseModel
import os
class Settings(BaseModel):
DATABASE_URL: str = os.getenv("DATABASE_URL", "postgresql+asyncpg://postgres:postgres@localhost:5432/tasks")
RABBITMQ_URL: str = os.getenv("RABBITMQ_URL", "amqp://guest:guest@localhost/")
RABBITMQ_EXCHANGE: str = os.getenv("RABBITMQ_EXCHANGE", "tasks")
RABBITMQ_EXCHANGE_TYPE: str = "topic"
MAX_RETRIES: int = int(os.getenv("MAX_RETRIES", "3"))
DNS_TIMEOUT: float = float(os.getenv("DNS_TIMEOUT", "3.0"))
DNS_LIFETIME: float = float(os.getenv("DNS_LIFETIME", "5.0"))
SMTP_TIMEOUT: float = float(os.getenv("SMTP_TIMEOUT", "10.0"))
HTTP_TIMEOUT: float = float(os.getenv("HTTP_TIMEOUT", "8.0"))
settings = Settings()