Host readers and the SSH transport move to napalm-unix #35

Open
opened 2026-10-14 08:22:57 +00:00 by christianmanivong · 0 comments
Owner

Shell commands and their parsers for POSIX hosts live here today: host_status, kernel, listening, systemd, virtual_ips, system_identity, package_updates, ssh_server, terminal, the paramiko half of channel and ContainerEngineConnection. host_status also carries a FreeBSD branch.

Change

  1. Create NAPALM/napalm-unix with the moved code and its tests, layout napalm_unix/{posix,linux,freebsd,openssh,transport}/. The six _run_* hooks become run_command (#22); one frame helper; one exception for "cannot read" and one for "not on this host". It also takes the privilege layer and the POSIX parsers napalm-linux and napalm-bsd each carry.
  2. Names on the host lose the application's name: 00-netork-ssh-hardening.conf, # netork: , /tmp/netork-ssh.*, "netOrk could no longer connect". A drop-in under the old name is still recognised and replaced.
  3. The FreeBSD reboot check moves to napalm-bsd.
  4. Deprecate the moved names here. No re-exports: this package must not depend on napalm-unix.
  5. Rule test: no module imports paramiko, socket or subprocess, and none defines a *_COMMAND.

#13 (Linux userland) and the parsers in #10 and #12 go to napalm-unix too.

Part of NetOrk/netork#1105. Plan: NAPALM/napalm-device-types docs/STRUCTURE.md (branch docs/structure-plan).

Prio P3.

Shell commands and their parsers for POSIX hosts live here today: `host_status`, `kernel`, `listening`, `systemd`, `virtual_ips`, `system_identity`, `package_updates`, `ssh_server`, `terminal`, the paramiko half of `channel` and `ContainerEngineConnection`. `host_status` also carries a FreeBSD branch. **Change** 1. Create `NAPALM/napalm-unix` with the moved code and its tests, layout `napalm_unix/{posix,linux,freebsd,openssh,transport}/`. The six `_run_*` hooks become `run_command` (#22); one frame helper; one exception for "cannot read" and one for "not on this host". It also takes the privilege layer and the POSIX parsers napalm-linux and napalm-bsd each carry. 2. Names on the host lose the application's name: `00-netork-ssh-hardening.conf`, `# netork: `, `/tmp/netork-ssh.*`, "netOrk could no longer connect". A drop-in under the old name is still recognised and replaced. 3. The FreeBSD reboot check moves to napalm-bsd. 4. Deprecate the moved names here. No re-exports: this package must not depend on napalm-unix. 5. Rule test: no module imports `paramiko`, `socket` or `subprocess`, and none defines a `*_COMMAND`. #13 (Linux userland) and the parsers in #10 and #12 go to napalm-unix too. Part of NetOrk/netork#1105. Plan: NAPALM/napalm-device-types `docs/STRUCTURE.md` (branch `docs/structure-plan`). Prio P3.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: NAPALM/napalm-device-types#35