mirror of
https://github.com/hansjone/netx.git
synced 2026-10-09 03:10:46 +08:00
Add concurrent multi-NE CLI exec batch for field sweeps.
execManagedNe can take ne_ids/ume_ne_ids/targets and POST /v1/managed-ne/exec-batch so many show commands run in parallel instead of serial one-NE MCP loops. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
8a07baa018
commit
9ba4d051dc
8 changed files with 355 additions and 14 deletions
|
|
@ -127,6 +127,25 @@ class ManagedNeExecRequest(BaseModel):
|
|||
read_timeout_sec: int | None = Field(default=None, ge=10, le=120)
|
||||
|
||||
|
||||
class ManagedNeExecBatchTarget(BaseModel):
|
||||
"""One NE in a concurrent exec batch (exactly one of ne_id / ume_ne_id)."""
|
||||
|
||||
ne_id: str | None = None
|
||||
ume_ne_id: str | None = None
|
||||
commands: list[str] | None = Field(default=None, max_length=50)
|
||||
|
||||
|
||||
class ManagedNeExecBatchRequest(BaseModel):
|
||||
"""Run the same (or per-target) read-only CLI on many NEs concurrently."""
|
||||
|
||||
targets: list[ManagedNeExecBatchTarget] | None = Field(default=None, max_length=20)
|
||||
ne_ids: list[str] | None = Field(default=None, max_length=20)
|
||||
ume_ne_ids: list[str] | None = Field(default=None, max_length=20)
|
||||
commands: list[str] | None = Field(default=None, max_length=50)
|
||||
read_timeout_sec: int | None = Field(default=None, ge=10, le=120)
|
||||
concurrency: int | None = Field(default=4, ge=1, le=8)
|
||||
|
||||
|
||||
class HopProxyConfig(BaseModel):
|
||||
"""Shared jump-host (proxy) settings applied to one or many NEs."""
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue