From 87a1b9938f0f69fbd6b820d186dcc194a182365a Mon Sep 17 00:00:00 2001 From: Manohar Reddy Date: Tue, 14 Jul 2026 16:51:14 +0200 Subject: [PATCH] Expose is_secondary on StorageNodeDTO (v2 storage-nodes API) Passthrough of the existing model.is_secondary_node field, no behavior change. Needed by the simplyblock-operator's new load-aware primary node placement webhook to exclude secondary nodes from placement candidates (simplyblock/simplyblock-operator#). Co-Authored-By: Claude Sonnet 5 --- simplyblock_web/api/v2/_dtos.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/simplyblock_web/api/v2/_dtos.py b/simplyblock_web/api/v2/_dtos.py index 4d11d24db..9e6584419 100644 --- a/simplyblock_web/api/v2/_dtos.py +++ b/simplyblock_web/api/v2/_dtos.py @@ -299,6 +299,7 @@ class StorageNodeDTO(BaseModel): id: UUID cluster_id: UUID secondary_node_id: Optional[UUID] + is_secondary: bool status: StorageNodeStatus uptime: Optional[timedelta] hostname: str @@ -330,6 +331,7 @@ def from_model(model: StorageNode, stat_obj: Optional[StatsObject] = None): id=UUID(model.get_id()), cluster_id=UUID(model.cluster_id), secondary_node_id=UUID(model.secondary_node_id) if model.secondary_node_id else None, + is_secondary=model.is_secondary_node, status=cast(StorageNodeStatus, model.status), uptime=model.uptime(), hostname=model.hostname,