Fix undefined names and config router imports / task status update

This commit is contained in:
2026-04-14 13:53:39 +02:00
parent 09c764cebc
commit 6b436dc354
6 changed files with 573 additions and 167 deletions

View File

@@ -2,9 +2,11 @@ from __future__ import annotations
from typing import Annotated
import structlog
from fastapi import APIRouter, HTTPException, Query, Request, status
from app.dependencies import AuthDep, DbDep, Fail2BanSocketDep, Fail2BanStartCommandDep
from app.exceptions import ConfigOperationError, JailOperationError
from app.models.config import (
Fail2BanLogResponse,
GlobalConfigResponse,
@@ -20,6 +22,8 @@ from app.models.config import (
from app.services import config_file_service, config_service, jail_service, log_service, setup_service
from app.utils.fail2ban_client import Fail2BanConnectionError
log: structlog.stdlib.BoundLogger = structlog.get_logger()
router: APIRouter = APIRouter(tags=["Config Misc"])
@@ -29,6 +33,13 @@ def _bad_gateway(exc: Exception) -> HTTPException:
detail=f"Cannot reach fail2ban: {exc}",
)
def _bad_request(message: str) -> HTTPException:
return HTTPException(
status_code=status.HTTP_400_BAD_REQUEST,
detail=message,
)
@router.get(
"/global",
response_model=GlobalConfigResponse,
@@ -286,8 +297,6 @@ async def get_map_color_thresholds(
:class:`~app.models.config.MapColorThresholdsResponse` with
current thresholds.
"""
from app.services import setup_service
high, medium, low = await setup_service.get_map_color_thresholds(db)
return MapColorThresholdsResponse(
threshold_high=high,
@@ -298,6 +307,7 @@ async def get_map_color_thresholds(
@router.put(
"/map-color-thresholds",
response_model=MapColorThresholdsResponse,
@@ -324,8 +334,6 @@ async def update_map_color_thresholds(
HTTPException: 400 if validation fails (thresholds not
properly ordered).
"""
from app.services import setup_service
try:
await setup_service.set_map_color_thresholds(
db,
@@ -382,7 +390,7 @@ async def get_fail2ban_log(
"""
try:
return await config_service.read_fail2ban_log(socket_path, lines, filter)
except config_service.ConfigOperationError as exc:
except ConfigOperationError as exc:
raise _bad_request(str(exc)) from exc
except Fail2BanConnectionError as exc:
raise _bad_gateway(exc) from exc