bmc (napalm_redfish.bmc:BmcDriver) reads a BMC over Redfish where it answers. A BMC that refuses Redfish (no license) is read and switched over IPMI. A getter that fails over Redfish is asked over IPMI where IPMI has it; IPMI is opened only then. Power control goes over Redfish when it answers, and a refusal is final. The BMC is reset over Redfish only. Same account for both; ipmi_port in optional_args. Discovery suggests bmc for a BMC it finds: the fingerprint rules moved from RedfishDriver to BmcDriver.
42 lines
1.0 KiB
TOML
42 lines
1.0 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=64"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "napalm-redfish"
|
|
version = "0.4.0"
|
|
description = "NAPALM driver for server baseboard management controllers over DMTF Redfish"
|
|
readme = "README.md"
|
|
license = { file = "LICENSE" }
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"napalm>=5.0",
|
|
# Not on PyPI: install from git before this package (see README).
|
|
"napalm-device-types>=4.8",
|
|
"redfish>=3.2",
|
|
"pyghmi>=1.5",
|
|
]
|
|
classifiers = [
|
|
"License :: OSI Approved :: Apache Software License",
|
|
"Programming Language :: Python :: 3",
|
|
"Topic :: System :: Hardware",
|
|
"Topic :: System :: Networking",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
test = [
|
|
"pytest>=7",
|
|
"responses>=0.23",
|
|
]
|
|
|
|
[project.entry-points."napalm.drivers"]
|
|
redfish = "napalm_redfish:RedfishDriver"
|
|
ipmi = "napalm_redfish.ipmi:IpmiDriver"
|
|
bmc = "napalm_redfish.bmc:BmcDriver"
|
|
|
|
[tool.setuptools.packages.find]
|
|
include = ["napalm_redfish*"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|