nso-adapter
Middleware service between Cisco NSO and consumers (NetBox first). Speaks NSO RESTCONF; exposes a consumer-agnostic northbound REST API. Internally split into a generic NSO core and pluggable consumer bindings; a NetBox binding ships with it.
Documentation
docs/00-plan.md— overall plan for the NSO ↔ NetBox integration (cross-cutting; lives here because the adapter implements the contract).docs/api-contract.md— canonical northbound REST API contract. The NetBox plugin builds against this.docs/nso-adapter.md— adapter design (this repo).
Companion repos: netbox-nso-plugin — the NetBox
plugin that consumes this adapter; nso-packages — the NSO-side YANG
service packages (network-state-export read exports + the *-reconciler
write services) the adapter drives over RESTCONF.
Status
In active development (Phase 2, 2026-06). The northbound API serves ~57
endpoints across 16 config families (interfaces/IPs/MTU, VLAN/switchport,
SVI, subinterfaces, L2 services, LAG, IS-IS, OSPF, BGP, route-policy,
redistribution, static routes, BFD, SNMP, logging) — read mirrors plus a
full-replace intent store with a durable apply worker, post-apply dry-run
verification, periodic + SSE-triggered sync, and an intent-summary endpoint
for split-brain detection. docs/api-contract.md is kept in lock-step with
the implemented surface; docs/00-plan.md §6/§7 records the original
Phase 1 plan.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nso_adapter-1.2.1.tar.gz.
File metadata
- Download URL: nso_adapter-1.2.1.tar.gz
- Upload date:
- Size: 489.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
49ccd0d4a0e2e940a27791e2fe0aa9f04064a81c11d3dbb41f8611bc9b5f14f2
|
|
| MD5 |
0c9f33b3376b5bf3305306ed54a2a82e
|
|
| BLAKE2b-256 |
327dfde3e3b62a44bcf688054dc27fa82c2d31d41cccafa02f7b89cfbd55c14b
|
Provenance
The following attestation bundles were made for nso_adapter-1.2.1.tar.gz:
Publisher:
release.yml on marcinpsk/nso-adapter
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nso_adapter-1.2.1.tar.gz -
Subject digest:
49ccd0d4a0e2e940a27791e2fe0aa9f04064a81c11d3dbb41f8611bc9b5f14f2 - Sigstore transparency entry: 2674578785
- Sigstore integration time:
-
Permalink:
marcinpsk/nso-adapter@30339722488a96071b0ef65d379b846ae8c2aa9a -
Branch / Tag:
refs/heads/main - Owner: https://github.com/marcinpsk
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@30339722488a96071b0ef65d379b846ae8c2aa9a -
Trigger Event:
push
-
Statement type:
File details
Details for the file nso_adapter-1.2.1-py3-none-any.whl.
File metadata
- Download URL: nso_adapter-1.2.1-py3-none-any.whl
- Upload date:
- Size: 547.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d11662697c3da8b1fa66330ce543cb8c802b3e52a9197908167920523d4fcff
|
|
| MD5 |
081f5a281aaa02ce6ba3fc98c666772e
|
|
| BLAKE2b-256 |
35af776897512fbd36c1bff976e02e5bb30b360045666ac95360a1a9e36211c3
|
Provenance
The following attestation bundles were made for nso_adapter-1.2.1-py3-none-any.whl:
Publisher:
release.yml on marcinpsk/nso-adapter
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nso_adapter-1.2.1-py3-none-any.whl -
Subject digest:
1d11662697c3da8b1fa66330ce543cb8c802b3e52a9197908167920523d4fcff - Sigstore transparency entry: 2674578806
- Sigstore integration time:
-
Permalink:
marcinpsk/nso-adapter@30339722488a96071b0ef65d379b846ae8c2aa9a -
Branch / Tag:
refs/heads/main - Owner: https://github.com/marcinpsk
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@30339722488a96071b0ef65d379b846ae8c2aa9a -
Trigger Event:
push
-
Statement type: