CI / test (3.10) (push) Successful in 29s
CI / test (3.11) (push) Successful in 30s
CI / test (3.12) (push) Successful in 29s
CI / test (3.10) (pull_request) Successful in 29s
CI / test (3.11) (pull_request) Successful in 46s
CI / test (3.12) (pull_request) Successful in 42s
first_boot_pending() is true while /firstboot exists on FreeBSD. A FreeBSD cloud image upgrades its base system on its first boot, starts sshd only after that and restarts right away, and /etc/rc removes /firstboot just before that restart. netOrk waits for this before it sets up a new VM (NetOrk/netork#795). OpenBSD has no such marker to ask yet, so it returns False there.
40 lines
2.1 KiB
Markdown
40 lines
2.1 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## [Unreleased]
|
|
|
|
### Added
|
|
- `FreeBSDDriver` (`freebsd`) and `OpenBSDDriver` (`openbsd`) on a shared
|
|
`BsdDriver`: SSH over exec channels (no PTY, real exit codes), root through
|
|
`sudo -S` with the password on stdin.
|
|
- Read side (NetOrk/netork#798): facts (SMBIOS through `kenv` on FreeBSD,
|
|
`hw.*` sysctls on OpenBSD; uptime from `kern.boottime`), interfaces and
|
|
their addresses (`ifconfig -a`), routes (`netstat -rn`), ARP (`arp -an`),
|
|
users and groups, processes (`ps … lstart`), cron jobs (system crontab and
|
|
the login user's).
|
|
- `get_listening_sockets()` in the shape of `ListeningSocketsMixin`: FreeBSD
|
|
through `sockstat`, OpenBSD through `fstat` as root and `netstat -an`
|
|
without, which the reading reports as `attributed: False`.
|
|
- Packages: `get_packages`, `install_package`, `uninstall_package`. FreeBSD's
|
|
install bootstraps pkg on a classic system that never had it.
|
|
- Updates: `get_available_updates`, with VuXML's verdict as `security` on
|
|
FreeBSD and base-system patches as one `base-system` entry (OpenBSD
|
|
`syspatch`, classic FreeBSD `freebsd-update`). A reader that cannot read
|
|
raises instead of returning no updates (#4).
|
|
- Services: `get_services` and `manage_service` (start, stop, restart,
|
|
enable, disable) through `service` and `rcctl`.
|
|
- SNMP: `run_device_action("fix_snmp")` installs net-snmp, writes the same
|
|
configuration netOrk uses on Linux, starts the agent and asks it for
|
|
sysDescr; `get_snmp_config` reports a running agent's community and port.
|
|
- `get_host_status` (napalm-device-types' `HostStatusMixin`): on FreeBSD,
|
|
"reboot required" when the installed kernel differs from the running one.
|
|
- `first_boot_pending()`: whether a FreeBSD host is still in its first boot
|
|
(`/firstboot`), so netOrk can wait before setting up a new VM
|
|
(NetOrk/netork#795).
|
|
- Parsers tested on output recorded from FreeBSD 15.1 (hand-installed and
|
|
cloud image) and OpenBSD 7.9 (NetOrk/netork#793).
|