Network Automation Standard Library
This library contains the functions and utilities that are shared by most Network Automation projects built at SURF.
Installation
To install the package from PyPI:
pip install nwa-stdlib
Development
Virtual Environment
Steps to setup a virtual environment.
Install uv and create the development environment:
uv sync --locked --group test --group dev
Run project commands through that environment with uv run, for example:
uv run pytest
Unit tests
Run the unit tests through the uv-managed environment:
uv run pytest
Pre-commit
This project uses pre-commit to automatically run a number of checks before making a git commit. The same checks will be performed in the CI pipeline so this can save you some time.
First ensure you have pre-commit installed. It is recommended to install it outside the virtualenv. On Linux and Mac, pre-commit is available in most package managers. Alternatively you can install it globally with pipx.
Once pre-commit is installed, go into the project root and enable it:
pre-commit install
This should output pre-commit installed at .git/hooks/pre-commit. The next time you run git commit the pre-commit hooks will validate your changes.
Set the package version
When a release version has been assigned, update the package metadata on a clean branch with uv version:
uv version 1.12.2
Specify the full version explicitly so release candidates can be represented, for example uv version 1.12.2rc1.
Supported Python versions
nwa-stdlib must support the same python versions as orchestrator-core.
Exceptions to this rule are:
- A new python version is released: nwa-stdlib should support the new version before orchestrator-core does
- Support for an old python version is dropped: nwa-stdlib should drop the python version after orchestrator-core does
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 nwa_stdlib-1.12.2.tar.gz.
File metadata
- Download URL: nwa_stdlib-1.12.2.tar.gz
- Upload date:
- Size: 28.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2dcf98a40d36d3bd7cb8aa7db2e60ba9cd679c736691f9ad14cb48eeefc2ad3
|
|
| MD5 |
510d5e89fcc02fdb1d8165ad3c19316c
|
|
| BLAKE2b-256 |
8593ab7e6bee87ffd16fa488a6c509a378492cd8efb76a5ed84ac2f0c1302e3a
|
Provenance
The following attestation bundles were made for nwa_stdlib-1.12.2.tar.gz:
Publisher:
publish-release.yaml on workfloworchestrator/nwa-stdlib
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nwa_stdlib-1.12.2.tar.gz -
Subject digest:
c2dcf98a40d36d3bd7cb8aa7db2e60ba9cd679c736691f9ad14cb48eeefc2ad3 - Sigstore transparency entry: 2498389195
- Sigstore integration time:
-
Permalink:
workfloworchestrator/nwa-stdlib@bd7491ea65b61f1791bffc4501c4d706c85a8cd4 -
Branch / Tag:
refs/tags/1.12.2 - Owner: https://github.com/workfloworchestrator
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-release.yaml@bd7491ea65b61f1791bffc4501c4d706c85a8cd4 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nwa_stdlib-1.12.2-py3-none-any.whl.
File metadata
- Download URL: nwa_stdlib-1.12.2-py3-none-any.whl
- Upload date:
- Size: 29.7 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 |
3ba87e1e8fe569fa43fc617100b800700738396f1ca8a541778b10e0196df586
|
|
| MD5 |
59d5ffe4e24c5c09e05159aaf9801573
|
|
| BLAKE2b-256 |
4e31461bd5880ffc4b3fd6fc045901caf03a4dfc096acd9cb7490850d9671f6f
|
Provenance
The following attestation bundles were made for nwa_stdlib-1.12.2-py3-none-any.whl:
Publisher:
publish-release.yaml on workfloworchestrator/nwa-stdlib
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nwa_stdlib-1.12.2-py3-none-any.whl -
Subject digest:
3ba87e1e8fe569fa43fc617100b800700738396f1ca8a541778b10e0196df586 - Sigstore transparency entry: 2498389211
- Sigstore integration time:
-
Permalink:
workfloworchestrator/nwa-stdlib@bd7491ea65b61f1791bffc4501c4d706c85a8cd4 -
Branch / Tag:
refs/tags/1.12.2 - Owner: https://github.com/workfloworchestrator
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-release.yaml@bd7491ea65b61f1791bffc4501c4d706c85a8cd4 -
Trigger Event:
release
-
Statement type: