tomaka/redshirt

Use QEmu to test kernel in CI

Closed this issue · 2 comments

It should be possible to run qemu -nographics -... in order to boot the kernel, run some self-tests, then shut down the kernel. The CI could then do this to make sure that there is no regression.

One uncertainty is how to detect success. We don't want the test to accidentally succeed if the kernel actually crashes. One possibility could be, on success, to print a message on the serial interface, and detect this message from the outside.

The next step after #689 is:

  • #682
  • Implement ACPI shutdown.
  • Add a standalone-kernel-builder test command.

Done in #774

ACPI shutdown wasn't needed as we just detect a specific log line and shut down the emulator from the outside.