Update README and references for the transport and parsers
This commit is contained in:
2 files changed
+21
-5
No files matched your search
@@ -5,8 +5,12 @@ NAPALM driver for server **baseboard management controllers (BMCs)** over
|
|||||||
boards that predate Redfish. Built on
|
boards that predate Redfish. Built on
|
||||||
[napalm-device-types](https://git.netork.io/NAPALM/napalm-device-types). Written for netOrk.
|
[napalm-device-types](https://git.netork.io/NAPALM/napalm-device-types). Written for netOrk.
|
||||||
|
|
||||||
**Status: planning.** There is no code yet. This repository holds the design so far. The
|
**Status: early development.** The HTTPS transport (`napalm_redfish/transport.py`) and pure
|
||||||
first test device is a Supermicro X10DRL-i (BMC firmware 3.91, Redfish).
|
parsers for the Redfish resources in [docs/redfish-map.md](docs/redfish-map.md)
|
||||||
|
(`napalm_redfish/parsers/`) exist and are tested against DMTF mockups. The driver class and
|
||||||
|
its `napalm.drivers` entry point wait for the `ManagementControllerDriver` role base in
|
||||||
|
napalm-device-types. The first test device is a Supermicro X10DRL-i (BMC firmware 3.91,
|
||||||
|
Redfish).
|
||||||
|
|
||||||
## Why Redfish, and why not one driver per vendor
|
## Why Redfish, and why not one driver per vendor
|
||||||
|
|
||||||
@@ -60,6 +64,17 @@ These follow the other drivers in the `NAPALM` organisation:
|
|||||||
- `napalm-device-types` is not on PyPI: install it from
|
- `napalm-device-types` is not on PyPI: install it from
|
||||||
`git+https://git.netork.io/NAPALM/napalm-device-types.git` before this package.
|
`git+https://git.netork.io/NAPALM/napalm-device-types.git` before this package.
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python -m venv .venv && . .venv/bin/activate
|
||||||
|
pip install -e '.[test]'
|
||||||
|
pytest
|
||||||
|
```
|
||||||
|
|
||||||
|
Fixtures from the DMTF mockups live under `tests/fixtures/dmtf-<mockup>/`, unmodified, with
|
||||||
|
the DMTF license and a `COMMANDS.txt` naming the source commit and request paths.
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
Apache License 2.0, see [LICENSE](LICENSE).
|
Apache License 2.0, see [LICENSE](LICENSE).
|
||||||
+4
-3
@@ -22,9 +22,10 @@ Collected 2026-10-13.
|
|||||||
| `sushy-tools` (OpenStack) | Redfish emulator for tests | Apache-2.0 | active |
|
| `sushy-tools` (OpenStack) | Redfish emulator for tests | Apache-2.0 | active |
|
||||||
| `pyghmi` | IPMI over LAN, pure Python | Apache-2.0 | release 1.6.19, 2026-07-13 on PyPI (the GitHub mirror is archived) |
|
| `pyghmi` | IPMI over LAN, pure Python | Apache-2.0 | release 1.6.19, 2026-07-13 on PyPI (the GitHub mirror is archived) |
|
||||||
|
|
||||||
Choosing between the thin `redfish` client and `sushy` is open. The thin client keeps
|
The transport uses the thin `redfish` client, which keeps quirk handling in this driver;
|
||||||
quirk handling in this driver; `sushy` brings an object model but also its own assumptions
|
`sushy` brings an object model but also its own assumptions about Ironic's needs. Note that
|
||||||
about Ironic's needs.
|
the `redfish` library turns certificate verification off whenever it is not given a CA file,
|
||||||
|
so the transport always passes one when verification is on.
|
||||||
|
|
||||||
## Supermicro
|
## Supermicro
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user