=== CI Test Harness For Bootloader

Links: +
link:https://wiki.freebsd.org/SummerOfCode2023Projects/CITestHarnessForBootloader[FreeBSD Wiki GSoC Page] URL: https://wiki.freebsd.org/SummerOfCode2023Projects/CITestHarnessForBootloader[] +
link:https://github.com/mightyjoe781/freebsd-src/tree/bootloader-smk/tools/boot/bootloader_test[GitHub Project Link] URL: https://github.com/mightyjoe781/freebsd-src/tree/bootloader-smk/tools/boot/bootloader_test[]

Contact: Sudhanshu Mohan Kashyap <smk@FreeBSD.org>

FreeBSD supports multiple architectures, file systems, and disk-partitioning schemes.
I am trying to write a Lua script which would allow for testing boot loader of all the architecture combinations supported in the first and second-tier support, and provide a report on any broken combinations and expected functionality.
If time permits, further exploration could be done to integrate the script into the existing build infrastructure (either Jenkins or GitHub Actions) to generate a comprehensive summary of the test results.

Currently any changes made by developer might inhibit the ability of the operating system to boot in some specific environment.
These scripts provide assurance that changes do not cause regressions for the tested environments.
The scripts are designed to be efficient and much less expensive than a full make universe required today.
These attributes allow developers to routinely use the script, and allow integration into the CI pipelines without undue cost.

Currently script related work seems to be on track, but certainly ahead I will need to find all different kinds of QEMU recipes to test different environments.
If anyone has any kind of working QEMU recipe for currently released versions of FreeBSD, feel free to send to me via mail at smk@FreeBSD.org .

Sponsor: The Google Summer of Code '23 program
