mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-11-04 06:21:15 +02:00
Merge branch '3.1' into fix/duplicate-device-configs-merge
Resolve conflicts against the upstream wave (PRs #2952-#2965, incl. the typed-response/schema hardening and the drop of Python 3.10): - controller/node.py: keep upstream's _transitioning/_confirm_status lifecycle guard; the kernel-anchor link wiring (node_started) runs after the transition completes. - controller/link.py: keep upstream's add_node rollback (release_ports on create failure) and delete via release_ports; release_ports now resolves ports live (same staleness reason as _bind_members) and discards the node link unconditionally. - schemas/controller/links.py: extend LinkFilterType with the eight kernel-datapath filter types and LinkFilterParameter.type with "str" so the newly typed /available_filters response validates; Link.filters stays a free-form dict — the vocabulary is capability-gated per link and validated by the controller (409), not by a strict request schema. - schemas/controller/topology.py: drop the type: ignore made redundant by the dict filters field. - tests: route-level filter validation now expects the controller's 409 (unknown types, out-of-range values); packet_loss correlation is a valid kernel parameter (positive test added); OpenAPI assertions match the free-form filters property.
This commit is contained in:
60 files changed
+2654
-271
No files matched your search
@@ -17,7 +17,7 @@
|
||||
# General schemas
|
||||
from .common import ErrorMessage
|
||||
from .config import ServerConfig
|
||||
from .controller.appliances import Appliance, ApplianceVersion, ApplianceVersionV8
|
||||
from .controller.appliances import Appliance, ApplianceVersion, ApplianceVersionCreate, ApplianceVersionV8
|
||||
from .controller.computes import (
|
||||
AutoIdlePC,
|
||||
Compute,
|
||||
@@ -37,6 +37,11 @@ from .controller.links import (
|
||||
Link,
|
||||
LinkCapture,
|
||||
LinkCreate,
|
||||
LinkFilterDefinition,
|
||||
LinkFilterParameter,
|
||||
LinkFilters,
|
||||
LinkFilterType,
|
||||
LinkIfaceInfo,
|
||||
LinkUpdate,
|
||||
MarkerCreate,
|
||||
MarkerDefinitionCreate,
|
||||
@@ -119,6 +124,7 @@ from .compute.vpcs_nodes import VPCS, VPCSCreate, VPCSUpdate
|
||||
from .controller.capabilities import Capabilities
|
||||
from .controller.iou_license import IOULicense
|
||||
from .controller.netmiko import NetmikoDeviceType, NetmikoDeviceTypeList
|
||||
from .controller.notifications import Notification, NotificationAction
|
||||
from .controller.pools import Resource, ResourceCreate, ResourcePool, ResourcePoolCreate, ResourcePoolUpdate
|
||||
from .controller.rbac import ACE, ACECreate, ACEUpdate, Privilege, Role, RoleCreate, RoleUpdate
|
||||
from .controller.settings import SettingsResponse, SettingsUpdate, SettingsUpdateResponse
|
||||
@@ -173,6 +179,7 @@ __all__ = [
|
||||
"ApiKeyCreate",
|
||||
"Appliance",
|
||||
"ApplianceVersion",
|
||||
"ApplianceVersionCreate",
|
||||
"ApplianceVersionV8",
|
||||
"AutoIdlePC",
|
||||
"BatchNIOCreate",
|
||||
@@ -256,6 +263,11 @@ __all__ = [
|
||||
"Link",
|
||||
"LinkCapture",
|
||||
"LinkCreate",
|
||||
"LinkFilterDefinition",
|
||||
"LinkFilterParameter",
|
||||
"LinkFilterType",
|
||||
"LinkFilters",
|
||||
"LinkIfaceInfo",
|
||||
"LinkUpdate",
|
||||
"LoggedInUserUpdate",
|
||||
"MarkerCreate",
|
||||
@@ -273,6 +285,8 @@ __all__ = [
|
||||
"NodeDuplicate",
|
||||
"NodeFile",
|
||||
"NodeUpdate",
|
||||
"Notification",
|
||||
"NotificationAction",
|
||||
"OpenAIMessage",
|
||||
"OpenAIToolCall",
|
||||
"Privilege",
|
||||
|
||||
Reference in new issue
Block a user