fix: mixin classes must precede AccessPointDriver in OpenWrtDriver MRO

NetworkDriver (parent of AccessPointDriver) raises NotImplementedError for all
standard NAPALM methods. With AccessPointDriver listed first, get_interfaces()
and get_vlans() from the mixins were shadowed and always raised NotImplementedError
(empty message) — causing all AP polls to report 0 interfaces and 0 VLANs.

Fix: reorder inheritance so mixins come before AccessPointDriver. The standard
NAPALM method stubs in NetworkDriver are now shadowed by the mixin implementations.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Christian Manivong
2026-06-25 13:48:25 +02:00
co-authored by Claude Sonnet 4.6
parent 4c41345489
commit ee69ec8da9
+2 -2
View File
@@ -44,15 +44,15 @@ from napalm_openwrt.routing_mixin import OpenWrtRoutingMixin
class OpenWrtDriver( class OpenWrtDriver(
AccessPointDriver,
OpenWrtInterfaceMixin, OpenWrtInterfaceMixin,
OpenWrtVLANMixin,
OpenWrtWirelessMixin, OpenWrtWirelessMixin,
OpenWrtLLDPMixin, OpenWrtLLDPMixin,
OpenWrtVLANMixin,
OpenWrtConfigMixin, OpenWrtConfigMixin,
OpenWrtSystemMixin, OpenWrtSystemMixin,
OpenWrtPackageMixin, OpenWrtPackageMixin,
OpenWrtRoutingMixin, OpenWrtRoutingMixin,
AccessPointDriver,
): ):
"""NAPALM driver for OpenWrt routers and access-points.""" """NAPALM driver for OpenWrt routers and access-points."""