task-queue-system/app/config.py

15 lines
No EOL
719 B
Python

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()