Releases: cisco-open/sdwan-lab-deployment-tool
Releases · cisco-open/sdwan-lab-deployment-tool
Release list
v3.2.0
What's Changed
- Add per-node CPU/RAM overrides to
deployvia--manager-cpus/--manager-ram,--controller-cpus/--controller-ramand--validator-cpus/--validator-ram(env varsMANAGER_CPUS,MANAGER_RAM,CONTROLLER_CPUS,CONTROLLER_RAM,VALIDATOR_CPUS,VALIDATOR_RAM); each node keeps its image default unless overridden, and overrides are ignored with--retry - Fix
deploy/restoreskipping the initial setup workflow completion on Manager 20.18 (was gated to>= 26, but the feature was introduced in 20.18.1) - Fix
deploycreating two duplicateadminusers in SD-WAN Manager's cloud-init config when--manager-user adminis used (same value as the default account)
Full Changelog: v3.1.4...v3.2.0
v3.1.4
What's Changed
- Fix
restorecrashing withTypeError: expected string or bytes-like object, got 'list'when a backed-up edge node was inactive at backup time
Full Changelog: v3.1.3...v3.1.4
v3.1.3
What's Changed
- Fix
restorefailing withInterface eth2 not found in VPN 0if modified direct connectivity between SD-WAN Manager eth0 and external connector - Fix
addcrashing with an unhandledReadTimeoutwhile polling for controller/validator reachability right after boot - Update
deploy,restoreandadd controllerto configure controllers via network-settings instead of attaching a device template (>=20.18)
Full Changelog: v3.1.2...v3.1.3
v3.1.2
What's Changed
- Fix
addfailing withHTTP 400 Not Defined In Schema Attributesagainst config groups (e.g. from an older tool version) that don't define per-device_maskvariables — device variables are now filtered against the config group's actual schema - Fix
restoredeleting the Manager node'sadminaccount when the configured manager user differs fromadmin - Fix
restorecreating the cloned manager user withoutnetadmin/global/allgroup membership, causing403 Access forbiddenafter restore - Fix
restorefailing to findtopology.yamlin zip backups that wrap their contents in a single top-level folder - Fix
restore --directory <relative-path>failing Sastre restore withWork directory not found— backup path is now resolved to absolute before use
Full Changelog: v3.1.1...v3.1.2
v3.1.1
What's Changed
- Fix
backuptask failing to extract config from control-plane nodes (Manager, Controller, Validator) when CML's SSH server rejects public key auth — paramiko now connects with password-only auth (allow_agent=False, look_for_keys=False)
Full Changelog: v3.1.0...v3.1.1
v3.1.0
What's Changed
- Fix backup task failing to extract config from SD-WAN and SD-Routing edges when
#present in interface description - Add Manager clustering support via
csdwan add managers <version>- Deploys additional Manager nodes into the CML topology with a dedicated Cluster switch
- Configures cluster IP on the primary Manager and enrolls new nodes one-by-one
- Supports
--personaflag (compute-and-datadefault,compute,data) - Certificates signed automatically after each node reaches Ready state (enterprise and Cisco PKI)
- Update
backupto capture cluster node personas from the live cluster management API and embed them in each Manager's backed-up cloud-init - Update
restoreto re-enroll secondary Manager nodes into the cluster after Sastre restore - Refactor progress reporting across all tasks to use a shared
task_progresscontext manager andmake_updaterhelper; every spinner update now also emits alog.infoevent, making task progress visible to log consumers - Add optional MCP server (
pip install catalyst-sdwan-lab[mcp], entry pointcsdwan-mcp)- Exposes all tasks as MCP tools an LLM agent (VS Code Copilot, opencode, …) can drive conversationally
- Long-running tools (deploy, add_devices, restore, images_upload) run as background jobs and return a
job_idimmediately; agent polls progress viajob_status
New Contributors
- @OlivierPelerin made their first contribution in #170
Full Changelog: v3.0.1...v3.1.0
v3.0.1
What's Changed
- Fix issue where
deploy,add, andrestoretasks fail to find software images when CML image IDs use dashes instead of dots (e.g.20-18-2-1instead of20.18.2.1)
Full Changelog: v3.0.0...v3.0.1
v3.0.0
What's Changed
Complete rewrite. The tool is now dependency-minimal with no catalystwan SDK, no pyATS, and no pyOpenSSL.
- Drop
catalystwanSDK — replaced with a thinrequests-based Manager HTTP client - Drop
pyats/unicon— replaced withparamikofor SSH access to CML nodes - Drop
pyOpenSSL— replaced with direct use ofcryptography - Migrate packaging from Poetry to
uv - Raise minimum Python version to 3.11
- Raise minimum SD-WAN Manager version to 20.15
- Raise minimum CML version to 2.7
- Add
imagessubcommand withlist,upload, anddelete— moves image management out ofsetup - Add SD-Routing Edge onboarding via config-group-based flow
- Add
--manager-portoption todeployandrestorefor PATty mode (replacespat:<port>syntax) - Add
--serial-fileoption todeployandrestorefor custom.viptelaserial files and org name - Add
--output / -ooption tosignto write the signed certificate to a file - Add
--debugglobal flag for HTTP-level request/response logging - Add
--directoryflag tobackupto save as an unpacked directory instead of a zip archive - Add support for Catalyst SD-WAN release 26.1.1
- Add progress status for SD-WAN Manager boot in
deployandrestore(Manager >= 26.1.1) - Skip initial setup workflow on first UI login in
deployandrestore(Manager >= 26.1.1) - Accept un-padded software versions (
26.1.1resolved to26.01.01automatically) - Move
setup --listtoimages listandsetup --deletetoimages delete - Rename
--manager→--manager-ip,--muser→--manager-user,--mpassword→--manager-pass,--mmask→--manager-mask,--mgateway→--manager-gateway,--ip_type→--ip-type,--deleteexisting→--delete-existing,--contr_version→--contr-version,--edge_version→--edge-version - Fix issue where SD-Routing devices with version lower than 26.1.1 could fail to be onboarded in add and restore tasks
- Add Cisco PKI support for
deployandrestore(--pki cisco, requires Manager 20.18.2+) — device code authentication flow, CSR submission to Cisco cloud, automatic polling for certificate installation - Add HTTP proxy support for
deployandrestore(--proxy-ip,--proxy-port,--no-proxy) — RFC1918 ranges always excluded from proxy automatically - Add PKI mode auto-detection to add task — reads current signing mode from Manager, no
--pkiflag needed
Full Changelog: v2.1.8...v3.0.0
v2.1.8
What's Changed
- In setup task, fix issue where --list would fail with
IndexError: list index out of rangewhen user has invalid image definitions created manually in CML
Full Changelog: v2.1.7...v2.1.8
v2.1.7
What's Changed
- In restore task, add backward compatibility for restoring old backups with legacy disk naming (sdb to vdb conversion for virtio disks)
- In restore task, fix issue where SD-WAN Manager might not boot properly if task is run with SD-WAN Manager username "admin"
- In restore task, fix deprecation warnings by replacing node.config with node.configuration
- In setup task, add verification for IOL and IOL-L2 node definitions
- In setup task, allow to run "csdwan setup --list" without CML administrator privileges
Full Changelog: v2.1.6...v2.1.7