Source code for modalysis.cli.handlers.server

"""CLI handler for starting the FastAPI server."""

import argparse
import logging
import subprocess
import sys
from pathlib import Path

logger = logging.getLogger(__name__)

_APP_PATH = Path(__file__).resolve().parents[2] / "server" / "main.py"


[docs] def handle_server(args: argparse.Namespace) -> None: """Handle `modalysis server` CLI command.""" logger.info("Starting server on port %s", args.port) command = "dev" if args.dev else "run" subprocess.run( [ sys.executable, "-m", "fastapi", command, str(_APP_PATH), "--port", str(args.port), "--host", "localhost", ], )