fix(typing): resolve mypy errors in api.routes.controller.acl

This commit is contained in:
Mark Paronyan 2026-09-28 05:17:02 +00:00
parent a86cae541e
commit 0872576b46
No known key found for this signature in database
GPG Key ID: 8DC7338A87FE22F8
2 changed files with 7 additions and 7 deletions

View File

@ -25,13 +25,14 @@ from fastapi import APIRouter, Depends, Request, status
from fastapi.routing import APIRoute, _IncludedRouter from fastapi.routing import APIRoute, _IncludedRouter
from starlette.routing import BaseRoute, Mount from starlette.routing import BaseRoute, Mount
from uuid import UUID from uuid import UUID
from typing import Iterator, List, Sequence from typing import Iterator, List, Optional, Sequence
from gns3server import schemas from gns3server import schemas
from gns3server.controller.controller_error import ControllerBadRequestError, ControllerNotFoundError from gns3server.controller.controller_error import ControllerBadRequestError, ControllerNotFoundError
from gns3server.controller import Controller from gns3server.controller import Controller
import gns3server.db.models as models
from gns3server.db.repositories.users import UsersRepository from gns3server.db.repositories.users import UsersRepository
from gns3server.db.repositories.rbac import RbacRepository from gns3server.db.repositories.rbac import RbacRepository
from gns3server.db.repositories.images import ImagesRepository from gns3server.db.repositories.images import ImagesRepository
@ -96,7 +97,7 @@ async def endpoints(
endpoints = [{"endpoint": "/", "name": "All endpoints", "endpoint_type": "root"}] endpoints = [{"endpoint": "/", "name": "All endpoints", "endpoint_type": "root"}]
def add_to_endpoints(endpoint: str, name: str, endpoint_type: str) -> None: def add_to_endpoints(endpoint: str, name: str, endpoint_type: str) -> None:
if endpoint not in endpoints: if not any(e["endpoint"] == endpoint for e in endpoints):
endpoints.append({"endpoint": endpoint, "name": name, "endpoint_type": endpoint_type}) endpoints.append({"endpoint": endpoint, "name": name, "endpoint_type": endpoint_type})
# projects # projects
@ -175,7 +176,7 @@ async def endpoints(
@router.get("", response_model=List[schemas.ACE], dependencies=[Depends(has_privilege("ACE.Audit"))]) @router.get("", response_model=List[schemas.ACE], dependencies=[Depends(has_privilege("ACE.Audit"))])
async def get_aces(rbac_repo: RbacRepository = Depends(get_repository(RbacRepository))) -> List[schemas.ACE]: async def get_aces(rbac_repo: RbacRepository = Depends(get_repository(RbacRepository))) -> List[models.ACE]:
""" """
Get all ACL entries. Get all ACL entries.
@ -193,7 +194,7 @@ async def get_aces(rbac_repo: RbacRepository = Depends(get_repository(RbacReposi
) )
async def create_ace( async def create_ace(
request: Request, ace_create: schemas.ACECreate, rbac_repo: RbacRepository = Depends(get_repository(RbacRepository)) request: Request, ace_create: schemas.ACECreate, rbac_repo: RbacRepository = Depends(get_repository(RbacRepository))
) -> schemas.ACE: ) -> models.ACE:
""" """
Create a new ACL entry. Create a new ACL entry.
@ -224,7 +225,7 @@ async def create_ace(
async def get_ace( async def get_ace(
ace_id: UUID, ace_id: UUID,
rbac_repo: RbacRepository = Depends(get_repository(RbacRepository)), rbac_repo: RbacRepository = Depends(get_repository(RbacRepository)),
) -> schemas.ACE: ) -> models.ACE:
""" """
Get an ACL entry. Get an ACL entry.
@ -240,7 +241,7 @@ async def get_ace(
@router.put("/{ace_id}", response_model=schemas.ACE, dependencies=[Depends(has_privilege("ACE.Modify"))]) @router.put("/{ace_id}", response_model=schemas.ACE, dependencies=[Depends(has_privilege("ACE.Modify"))])
async def update_ace( async def update_ace(
ace_id: UUID, ace_update: schemas.ACEUpdate, rbac_repo: RbacRepository = Depends(get_repository(RbacRepository)) ace_id: UUID, ace_update: schemas.ACEUpdate, rbac_repo: RbacRepository = Depends(get_repository(RbacRepository))
) -> schemas.ACE: ) -> Optional[models.ACE]:
""" """
Update an ACL entry. Update an ACL entry.

View File

@ -334,7 +334,6 @@ module = [
"gns3server.api.routes.compute.notifications", # 4 "gns3server.api.routes.compute.notifications", # 4
"gns3server.api.routes.compute.projects", # 7 "gns3server.api.routes.compute.projects", # 7
"gns3server.api.routes.compute.virtualbox_nodes", # 20 "gns3server.api.routes.compute.virtualbox_nodes", # 20
"gns3server.api.routes.controller.acl", # 5
"gns3server.api.routes.controller.api_keys", # 1 "gns3server.api.routes.controller.api_keys", # 1
"gns3server.api.routes.controller.chat", # 1 "gns3server.api.routes.controller.chat", # 1
"gns3server.api.routes.controller.computes", # 6 "gns3server.api.routes.controller.computes", # 6