From 03d248f1ded25f5007e4c9d85923b596ce113f26 Mon Sep 17 00:00:00 2001 From: host Date: Sun, 9 Aug 2026 14:23:08 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=BE=D0=B4=D0=BA=D0=BB=D1=8E=D1=87?= =?UTF-8?q?=D0=B5=D0=BD=D1=8B=20=D0=BC=D0=BE=D0=B4=D0=B5=D0=BB=D0=B8=20?= =?UTF-8?q?=D0=B8=20auth=20routers?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/main.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) 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"}