christianmanivong
661f6da3f7
Merge pull request 'fix: keep systemd's OSC 3008 shell context out of command output ( #41 )' ( #42 ) from fix/osc-context-41 into main
driver / lint (push) Successful in 17s
driver / standard (push) Successful in 18s
driver / test (3.10) (push) Successful in 1m13s
driver / types (push) Successful in 3m1s
driver / test (3.11) (push) Successful in 2m16s
driver / test (3.13) (push) Successful in 46s
driver / lowest (push) Successful in 25s
driver / test (3.12) (push) Successful in 1m43s
driver / build (push) Successful in 24s
driver / security (push) Successful in 56s
CI / driver (push) Successful in 5m29s
driver / publish (push) Skipped
2026-10-23 21:10:04 +00:00
christianmanivong
3aa1955382
Merge pull request 'chore: adopt the NAPALM driver standard' ( #38 ) from chore/driver-standard into main
driver / lint (push) Successful in 16s
driver / standard (push) Successful in 18s
driver / types (push) Successful in 1m13s
driver / test (3.11) (push) Successful in 1m10s
driver / test (3.10) (push) Successful in 1m14s
driver / lowest (push) Successful in 30s
driver / test (3.12) (push) Successful in 1m8s
driver / test (3.13) (push) Successful in 1m2s
driver / build (push) Successful in 34s
driver / security (push) Successful in 1m15s
driver / publish (push) Successful in 29s
CI / driver (push) Successful in 3m46s
2026-10-23 12:55:55 +00:00
christianmanivong
91b2025074
Merge pull request 'feat: apt's proxy through AptProxyMixin (NetOrk/netork#1397)' ( #39 ) from feat/apt-proxy-verify into master
CI / test (3.10) (push) Failing after 14s
CI / test (3.11) (push) Failing after 13s
CI / test (3.12) (push) Failing after 14s
2026-10-22 22:08:24 +00:00
christianmanivong
0ba5081824
Merge pull request 'feat: get_host_firewall, the host's own netfilter rules (NetOrk/netork#1344)' ( #37 ) from feat/host-firewall-1344 into master
CI / test (3.10) (push) Successful in 36s
CI / test (3.11) (push) Successful in 25s
CI / test (3.12) (push) Successful in 27s
2026-10-21 21:26:37 +00:00
christianmanivong
facc081123
Merge pull request 'feat: get_service_packages, which packages a systemd service is (NetOrk/netork#1236)' ( #36 ) from feat/service-packages-1236 into master
CI / test (3.10) (push) Successful in 38s
CI / test (3.11) (push) Successful in 39s
CI / test (3.12) (push) Successful in 29s
2026-10-19 17:08:12 +00:00
christianmanivong
c725f4882c
Merge pull request 'fix(ssh): verify the host key netOrk expects, report the one seen (NetOrk/netork#1167)' ( #35 ) from fix/ssh-host-key-tofu-1167 into master
CI / test (3.10) (push) Successful in 32s
CI / test (3.11) (push) Successful in 27s
CI / test (3.12) (push) Successful in 30s
2026-10-18 19:23:39 +00:00
christianmanivong
5951a6100e
Merge pull request 'chore: need napalm-device-types 4.18.0 for the service clusters (0.10.1)' ( #34 ) from chore/0.10.1 into master
CI / test (3.10) (push) Successful in 25s
CI / test (3.11) (push) Successful in 23s
CI / test (3.12) (push) Successful in 25s
2026-10-18 13:47:25 +00:00
christianmanivong
72f0daa995
Merge pull request 'feat: read the service clusters a host belongs to (0.10.0)' ( #33 ) from feat/service-clusters into master
CI / test (3.10) (push) Successful in 25s
CI / test (3.11) (push) Successful in 23s
CI / test (3.12) (push) Successful in 26s
2026-10-18 13:37:24 +00:00
christianmanivong
c8e2b328d7
Merge pull request 'feat: report the configured package proxy, not apt_proxy_missing (0.9.0)' ( #32 ) from feat/facts-not-warnings into master
CI / test (3.10) (push) Successful in 25s
CI / test (3.11) (push) Successful in 23s
CI / test (3.12) (push) Successful in 25s
2026-10-17 08:34:55 +00:00
christianmanivong
40f6ecd583
Merge pull request 'feat!: fix templates with the caller's values replace run_device_action (0.8.0)' ( #31 ) from feat/fix-templates-27 into master
CI / test (3.10) (push) Successful in 28s
CI / test (3.11) (push) Successful in 29s
CI / test (3.12) (push) Successful in 33s
2026-10-16 23:17:15 +00:00
christianmanivong
c98dd928e6
feat: get_system_identity for matching a host to its BMC (0.7.0)
...
CI / test (3.10) (push) Successful in 38s
CI / test (3.11) (push) Successful in 37s
CI / test (3.12) (push) Successful in 41s
Mixes in napalm-device-types 4.9's SystemIdentityMixin: the host's
SMBIOS system UUID, product serial and board serial, read as root on an
exec channel, vendor placeholders empty. netOrk links a server's BMC to
the host on these.
2026-10-13 12:20:12 +02:00
christianmanivong
350e3a6d6e
fix: adapt to napalm-device-types 4.7
...
CI / test (3.10) (push) Successful in 38s
CI / test (3.11) (push) Successful in 37s
CI / test (3.12) (push) Successful in 39s
napalm-device-types 4.7 changed three things this driver depends on:
- parse_dnf_security needs the "__DNF_RC=<status>" line that
DNF_SECURITY_COMMAND prints and raises ValueError without it or when dnf
failed. The yum security query had no such line, so listing updates on
any yum host raised. _YUM_SECURITY_COMMAND now prints the marker the same
way ("{ ...; echo __DNF_RC=$?; } | cat"). _rpm_security_names checks
__DNF_RC itself and turns a failed query, or output cut short before the
marker, into None (security unknown) rather than "no advisories" or an
exception.
- OSDriver.get_users was renamed to get_os_users, since NAPALM's own
get_users has another shape. LinuxDriver.get_users is now get_os_users
with the same return value.
- run_on_transport reads an exec channel to EOF after its exit status
arrives; the tests' fake channels gain recv/recv_stderr for that.
Require napalm-device-types>=4.7.1 and bump the version to 0.6.0.
2026-10-13 06:25:17 +00:00
christianmanivong
81b2df9d71
Merge pull request 'fix: run privileged commands on the exec channel, never typed into the shell' ( #25 ) from fix/sudo-not-in-command-1039 into master
CI / test (3.10) (push) Successful in 43s
CI / test (3.11) (push) Successful in 41s
CI / test (3.12) (push) Successful in 1m2s
2026-10-12 21:00:59 +00:00
christianmanivong
7b37366a44
Merge pull request 'fix: refuse stdin to a privileged command while a sudo password is set' ( #24 ) from fix/privileged-stdin-1029 into master
CI / test (3.10) (push) Successful in 46s
CI / test (3.11) (push) Successful in 51s
CI / test (3.12) (push) Successful in 49s
2026-10-12 20:19:16 +00:00
christianmanivong
7bd005eb29
Merge pull request 'feat: harden the host's SSH server through napalm-device-types' ( #23 ) from feat/ssh-algorithm-fix into master
CI / test (3.10) (push) Successful in 37s
CI / test (3.11) (push) Successful in 36s
CI / test (3.12) (push) Successful in 37s
2026-10-11 21:23:31 +00:00
christianmanivong
0268019743
Merge pull request 'feat: report the virtual IPs vip-manager and keepalived declare' ( #22 ) from feature/virtual-ips into master
CI / test (3.10) (push) Successful in 38s
CI / test (3.11) (push) Successful in 36s
CI / test (3.12) (push) Successful in 37s
2026-10-08 10:47:08 +00:00
christianmanivong
3a76b6d47f
Merge pull request 'refactor!: drop the Docker CLI methods' ( #20 ) from chore/drop-legacy-docker into master
CI / test (3.10) (push) Successful in 37s
CI / test (3.11) (push) Successful in 36s
CI / test (3.12) (push) Successful in 38s
2026-10-08 06:43:46 +00:00
christianmanivong
fe29b507b0
Merge pull request 'feat: run commands and streams on an exec channel, reach the container engine' ( #18 ) from feat/container-engine-channel into master
CI / test (3.10) (push) Successful in 38s
CI / test (3.11) (push) Successful in 36s
CI / test (3.12) (push) Successful in 39s
2026-10-07 16:04:33 +00:00
christianmanivong
0f5e2a1d37
Merge pull request 'ci: run the tests and build the package on every push and pull request' ( #16 ) from ci/workflow into master
CI / test (3.10) (push) Successful in 37s
CI / test (3.11) (push) Successful in 35s
CI / test (3.12) (push) Successful in 38s
2026-10-07 06:27:02 +00:00
christianmanivong
007590b9bf
Merge pull request 'feat: read the host's listening sockets through napalm-device-types' ( #14 ) from feat/listening-sockets into master
2026-10-06 16:19:50 +00:00
christianmanivong
3571149639
Merge pull request 'feat: restart the host (reboot_host)' ( #13 ) from feat/reboot-host into master
2026-10-06 11:05:44 +00:00
christianmanivong
e82f99df7b
Merge pull request 'fix: read a command to its exit status, not to the first line that looks like a prompt' ( #12 ) from fix/read-to-the-marker into master
2026-10-06 05:29:25 +00:00
christianmanivong
b49acb8ed7
Merge pull request 'feat: report where an update comes from and whether it is a security fix, refresh the index, read the host status' ( #11 ) from feat/update-origin-host-status into master
2026-10-05 22:20:08 +00:00
christianmanivong
e31bc2a3bf
Merge pull request 'feat: start, stop, restart, enable and disable services, and list them in one round trip' ( #9 ) from feat/manage-service into master
2026-10-05 11:12:14 +00:00
christianmanivong
31b8a37895
Merge pull request 'feat: report the running kernel's modules and build configuration' ( #8 ) from feat/kernel-facts into master
2026-10-05 04:36:47 +00:00
christianmanivong
b6b1827f96
Merge pull request 'fix: decide uninstall success by exit status, not by keywords' ( #2 ) from fix/uninstall-exit-status into master
2026-09-25 20:53:06 +00:00
christianmanivong
b45444c831
Merge pull request 'fix: capture ${source:Version}, the number OSV ranges are actually stated in' ( #1 ) from fix/capture-source-version into master
2026-09-14 04:11:34 +00:00
christianmanivong
c8fc46c373
feat: make the docker binary path a hook
...
Where docker lives is device-specific; what to do with it is not. QNAP's
Container Station installs docker under /share/<pool>/.qpkg/ and never
puts it on PATH, so a QTS driver inheriting this class found no docker at
all.
Rather than reimplementing the Docker surface in the vendor driver, the
path becomes a single overridable method and every call site goes through
it. Per docs/ARCHITECTURE.md 4.4, generic logic belongs to the shared
driver and only the device-specific mechanics belong to the vendor one.
A test asserts that *every* docker call site uses the hook — a half
converted set would let detection find the binary while the actual
queries still missed it, which only shows up against real hardware.
2026-08-21 10:28:12 +07:00