You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Instead of sleeping for 2 seconds to wait for booting, add a network
device and wait for ssh availability (happens automatically in
.start()). Use mark_killed() to assert that Firecracker exited instead
of "waitpid". Using `waitpid(2)` here is wrong, because it only works on
child processes, and Firecracker is no child of the pytest process (it
is daemonized, for starters). The reason we never caught this being
broken is because the test also simply ignores all exceptions raised.
But there's more issues here: The test never caused _killed to be set to
`True`, so if Firecracker really did exit, then we would have been
seeing intermittent failures during microvm teardown (as Microvm.kill()
asserts that the process is still alive if _killed is False). In fact,
our guest kernels do not have the required drivers compiled in to
support CTRL+ALT+DEL (thanks Riccardo for figuring this part out).
Signed-off-by: Patrick Roy <[email protected]>
0 commit comments