run_device_action(action) is a string dispatch that drivers fill with the application's remediations: fix_snmp (eight drivers), fix_apt_proxy, fix_docker_permissions, install_lldpd, install_auc. Their values are hard-coded in the drivers (rocommunity public, sysContact netork@localhost, a firewall rule for the caller's /24).
Change: one template per purpose. The template runs declared steps in order and stops at the first failure; a driver implements the steps, or overrides the whole method when its device does it in one call (OPNsense). Every value comes from the caller.
Add SnmpAgentSettingsDict (community, allowed sources, contact, location), FixStepDict and FixResultDict. The mixins are mixed in by drivers, not by role bases, so hasattr stays truthful. Deprecate run_device_action and DeviceActionResultDict.
Part of NetOrk/netork#1105. Plan: NAPALM/napalm-device-types docs/STRUCTURE.md (branch docs/structure-plan).
Prio P3.
`run_device_action(action)` is a string dispatch that drivers fill with the application's remediations: `fix_snmp` (eight drivers), `fix_apt_proxy`, `fix_docker_permissions`, `install_lldpd`, `install_auc`. Their values are hard-coded in the drivers (`rocommunity public`, `sysContact netork@localhost`, a firewall rule for the caller's /24).
**Change:** one template per purpose. The template runs declared steps in order and stops at the first failure; a driver implements the steps, or overrides the whole method when its device does it in one call (OPNsense). Every value comes from the caller.
| Today | Template |
|---|---|
| `fix_snmp` | `configure_snmp_agent(settings: SnmpAgentSettingsDict)` |
| `fix_apt_proxy` | `configure_package_proxy(url)` |
| `fix_docker_permissions` | `grant_container_engine_access(user)` |
| `install_lldpd`, `install_auc` | `ensure_package(name)` |
Add `SnmpAgentSettingsDict` (community, allowed sources, contact, location), `FixStepDict` and `FixResultDict`. The mixins are mixed in by drivers, not by role bases, so `hasattr` stays truthful. Deprecate `run_device_action` and `DeviceActionResultDict`.
Replaces #14.
Part of NetOrk/netork#1105. Plan: NAPALM/napalm-device-types `docs/STRUCTURE.md` (branch `docs/structure-plan`).
Prio P3.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
run_device_action(action)is a string dispatch that drivers fill with the application's remediations:fix_snmp(eight drivers),fix_apt_proxy,fix_docker_permissions,install_lldpd,install_auc. Their values are hard-coded in the drivers (rocommunity public,sysContact netork@localhost, a firewall rule for the caller's /24).Change: one template per purpose. The template runs declared steps in order and stops at the first failure; a driver implements the steps, or overrides the whole method when its device does it in one call (OPNsense). Every value comes from the caller.
fix_snmpconfigure_snmp_agent(settings: SnmpAgentSettingsDict)fix_apt_proxyconfigure_package_proxy(url)fix_docker_permissionsgrant_container_engine_access(user)install_lldpd,install_aucensure_package(name)Add
SnmpAgentSettingsDict(community, allowed sources, contact, location),FixStepDictandFixResultDict. The mixins are mixed in by drivers, not by role bases, sohasattrstays truthful. Deprecaterun_device_actionandDeviceActionResultDict.Replaces #14.
Part of NetOrk/netork#1105. Plan: NAPALM/napalm-device-types
docs/STRUCTURE.md(branchdocs/structure-plan).Prio P3.