from server.backend.schema.pydantic import settings from server.backend.database.db import create_user, list_users from server.backend.schema.pydantic import UserCreate import asyncio import uvicorn def start(log_level:str): if __name__ == "__main__": uvicorn.run( "server.backend.endpoints.endpoints:api", host="0.0.0.0", port=settings.PORT, reload=True, log_level=log_level, access_log=True ) import argparse parser = argparse.ArgumentParser(description="logging and admin creation") parser.add_argument( "--mode", choices=["debug","info"], default="info", help="Режим логирования (по умолчанию: info)" ) parser.add_argument( "--user_name", type=str, required=True, help="Создание первого пользователя)" ) args = parser.parse_args() async def arguments(args): admin_user = { "code": "123456", "name": args.user_name, "surname": args.user_name, "admin": True } users = await list_users() label = any(u.admin for u in users) if not label: await create_user(UserCreate(**admin_user)) match args.mode: case "debug" | "info": print("Режим:", args.mode) start(args.mode) asyncio.run(arguments(args))