chore: adopt the NAPALM driver standard
driver / standard (pull_request) Successful in 13s
driver / lint (pull_request) Successful in 12s
driver / types (pull_request) Successful in 43s
driver / test (3.10) (pull_request) Successful in 46s
driver / test (3.11) (pull_request) Successful in 48s
driver / test (3.12) (pull_request) Successful in 43s
driver / test (3.13) (pull_request) Successful in 39s
driver / lowest (pull_request) Successful in 23s
driver / security (pull_request) Successful in 46s
driver / build (pull_request) Successful in 22s
CI / driver (pull_request) Successful in 5m37s
driver / publish (pull_request) Skipped
driver / standard (pull_request) Successful in 13s
driver / lint (pull_request) Successful in 12s
driver / types (pull_request) Successful in 43s
driver / test (3.10) (pull_request) Successful in 46s
driver / test (3.11) (pull_request) Successful in 48s
driver / test (3.12) (pull_request) Successful in 43s
driver / test (3.13) (pull_request) Successful in 39s
driver / lowest (pull_request) Successful in 23s
driver / security (pull_request) Successful in 46s
driver / build (pull_request) Successful in 22s
CI / driver (pull_request) Successful in 5m37s
driver / publish (pull_request) Skipped
- CI arrives in .gitea/workflows/ci.yml and calls the shared driver workflow of NAPALM/driver-standard; the repo had none before. - setuptools>=77 and the SPDX license string PEP 639 wants, without the License classifier; napalm-device-types>=4.21.1 from PyPI; Issues and Changelog links on git.netork.io. LICENSE, NOTICE and py.typed were already there and stay. - The test extra becomes the dev extra of the standard, plus responses, which the tests mock AMT with. - mypy strict with the untyped imports (napalm, requests, defusedxml) named instead of ignored globally; napalm_amt.driver is exempt for now (5 errors: getters return dicts where the role declares TypedDicts), recorded in tests/quality_baseline.json with get_event_log's complexity of 11. - Coverage floor 95 % (measured 95.87 %). - CHANGELOG.md in Keep a Changelog form; the README's development steps install from PyPI.
This commit is contained in:
1 parent
76f85051cc
commit
c9a7ee4378
6 files changed
+83
-21
No files matched your search
@@ -29,8 +29,8 @@ nothing with napalm-redfish beyond the role, so it lives here.
|
||||
`optional_args`: `port` (16992; 16993 means TLS), `tls` (overrides what the port
|
||||
implies), `verify_ssl` (`True`, a CA file path, or `False`), `retries` (1).
|
||||
|
||||
The WS-Management client in `napalm_amt/wsman.py` is self-contained (requests and
|
||||
ElementTree). Neither `pywsman` (a C binding) nor `python-amt` (unmaintained, power only)
|
||||
The WS-Management client in `napalm_amt/wsman.py` is self-contained (requests, and
|
||||
defusedxml to parse the answers). Neither `pywsman` (a C binding) nor `python-amt` (unmaintained, power only)
|
||||
is used.
|
||||
|
||||
## What AMT knows, and what it does not
|
||||
@@ -54,12 +54,13 @@ of its own in the MEBx ([docs/lenovo-m910x.md](docs/lenovo-m910x.md)).
|
||||
|
||||
## Development
|
||||
|
||||
The rules are in [STANDARDS.md](https://git.netork.io/NAPALM/driver-standard/src/branch/main/STANDARDS.md).
|
||||
|
||||
```bash
|
||||
python -m venv .venv
|
||||
.venv/bin/pip install -e ../napalm-device-types # not on PyPI
|
||||
.venv/bin/pip install -e '.[test]' ruff mypy types-requests
|
||||
.venv/bin/python -m pytest
|
||||
.venv/bin/ruff check . && .venv/bin/mypy napalm_amt
|
||||
.venv/bin/pip install -e '.[dev]'
|
||||
.venv/bin/pytest --cov
|
||||
.venv/bin/ruff format --check . && .venv/bin/ruff check . && .venv/bin/mypy napalm_amt
|
||||
```
|
||||
|
||||
## Conventions
|
||||
|
||||
Reference in new issue
Block a user