napalm-srlinux
Community NAPALM driver for the Nokia SR Linux network OS, built on the JSON-RPC management interface; the only runtime dependencies are napalm and httpx.
Documentation: https://napalm.srlinux.dev
Development
The project is managed with uv:
uv sync # create the venv and install all dependencies
uv run pytest test/unit # unit tests (mocked JSON-RPC fixtures)
uv run ruff check napalm_srlinux test tools examples
Testing against a real node
make deploy-clab-ci # single-node containerlab topology
make run-tests # runs all test/ci tests against it
make destroy-clab-ci
All test/ci tests are pytest modules, so make run-tests runs them in a single session with a clean, per-test summary. To run one file (or a single test) against the running topology:
uv run pytest test/ci/compare_config.py # one file
uv run pytest test/ci/compare_config.py::test_cli_candidate_diff # one test
uv run pytest test/ci/compare_config.py --log-cli-level=DEBUG # verbose JSON-RPC logs
Logs (including the httpx/httpcore request traffic) are hidden by default and only shown on failure or when you pass --log-cli-level. Each file also runs as a plain script (uv run test/ci/compare_config.py).
Re-recording the unit-test fixtures
The mocked-data fixtures under test/unit/mocked_data/ are verbatim JSON-RPC responses recorded from a real two-node lab (BGP, LLDP, ARP, mac-vrf, NTP, ...):
make deploy-clab-record # two-node recording topology
make record-fixtures # configure the lab + record all fixtures
make destroy-clab-record
Review the resulting git diff before committing re-recorded fixtures.
License
Apache 2.0 - see LICENSE.
Metadata
Release files for napalm-srlinux 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| napalm_srlinux-0.3.1.tar.gz | 27.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| napalm_srlinux-0.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 55.8 kB
Release files / napalm_srlinux-0.3.1.tar.gz
| Download URL | napalm_srlinux-0.3.1.tar.gz |
|---|---|
| Size | 27.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e77d83e637ac59c3cd7a28811696f3b23330ab291186b138d06fe63b72b6571e
|
|
BLAKE2b-256 checksum How to use checksums |
24e4f0a84ef6f60198f74def12e71d23470c17c3be0c468ee0af248e9ff0f088
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 9, 2026.
Transparency logRelease files / napalm_srlinux-0.3.1-py3-none-any.whl
| Download URL | napalm_srlinux-0.3.1-py3-none-any.whl |
|---|---|
| Size | 28.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7a0ef09742f0f9e196ec71b7e3f66b9db3fe91107c3409ad0eaf62110f4c71c8
|
|
BLAKE2b-256 checksum How to use checksums |
06b766c4650fda28045c354f0a5bd81ea4dc0913019aa8d96299ad8c1b539981
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 9, 2026.
Transparency log