diff --git a/backend/app/main.py b/backend/app/main.py index 36ab7aa..0d13a9f 100644 --- a/backend/app/main.py +++ b/backend/app/main.py @@ -4,7 +4,10 @@ from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from sqlalchemy import create_engine, text +from . import models from .config import settings +from .database import Base, engine +from .routers import admin, auth logging.basicConfig( level=logging.INFO, @@ -14,7 +17,7 @@ logger = logging.getLogger(__name__) app = FastAPI( title="Proxmox VPS Panel Secure", - version="1.0.0", + version="1.1.0", ) origins = [item.strip() for item in settings.allow_origins.split(",") if item.strip()] @@ -29,6 +32,12 @@ app.add_middleware( allow_headers=["Authorization", "Content-Type"], ) +# Временное создание базовых таблиц до добавления Alembic-миграций. +# После появления миграций этот вызов должен быть удалён. +Base.metadata.create_all(bind=engine) +app.include_router(auth.router) +app.include_router(admin.router) + @app.get("/health") def health() -> dict[str, str]: @@ -39,10 +48,10 @@ def health() -> dict[str, str]: @app.get("/health/ready") def readiness() -> dict[str, str]: """Проверяет доступность критичной зависимости PostgreSQL.""" - engine = create_engine(settings.database_url, pool_pre_ping=True) + check_engine = create_engine(settings.database_url, pool_pre_ping=True) try: - with engine.connect() as connection: + with check_engine.connect() as connection: connection.execute(text("SELECT 1")) finally: - engine.dispose() + check_engine.dispose() return {"status": "ready"}