Skip to main content

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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

napalm_srlinux-0.3.1.tar.gz (27.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

napalm_srlinux-0.3.1-py3-none-any.whl (28.7 kB view details)

Uploaded Python 3

File details

Details for the file napalm_srlinux-0.3.1.tar.gz.

File metadata

  • Download URL: napalm_srlinux-0.3.1.tar.gz
  • Upload date:
  • Size: 27.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for napalm_srlinux-0.3.1.tar.gz
Algorithm Hash digest
SHA256 e77d83e637ac59c3cd7a28811696f3b23330ab291186b138d06fe63b72b6571e
MD5 289b9293a6a0b19aca32229614fe8cc5
BLAKE2b-256 24e4f0a84ef6f60198f74def12e71d23470c17c3be0c468ee0af248e9ff0f088

See more details on using hashes here.

Provenance

The following attestation bundles were made for napalm_srlinux-0.3.1.tar.gz:

Publisher: publish.yml on napalm-automation-community/napalm-srlinux

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file napalm_srlinux-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: napalm_srlinux-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 28.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for napalm_srlinux-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7a0ef09742f0f9e196ec71b7e3f66b9db3fe91107c3409ad0eaf62110f4c71c8
MD5 582345006c3cd87d42eb9370e3af84be
BLAKE2b-256 06b766c4650fda28045c354f0a5bd81ea4dc0913019aa8d96299ad8c1b539981

See more details on using hashes here.

Provenance

The following attestation bundles were made for napalm_srlinux-0.3.1-py3-none-any.whl:

Publisher: publish.yml on napalm-automation-community/napalm-srlinux

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page