feat: say whether a host is still in its first boot
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
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.
This commit is contained in:
@@ -31,6 +31,8 @@ class FreeBSDDriver(BsdDriver):
|
||||
ROUTES_COMMAND = "netstat -rnW"
|
||||
# sockstat names the process of every socket it can see; root sees them all.
|
||||
LISTENING_COMMAND = "sockstat -46lq -P tcp,udp"
|
||||
# /etc/rc removes it at the end of the first boot.
|
||||
FIRST_BOOT_MARKER = "/firstboot"
|
||||
|
||||
def _parse_listening(self, output: str, *, attributed: bool) -> list[dict]:
|
||||
return parse.sockstat(output)
|
||||
|
||||
Reference in New Issue
Block a user