fix(test): restore pruned live boot entries and verify mounted ESP
This commit is contained in:
@@ -26,12 +26,16 @@ adds the following real guest operations:
|
||||
invariants before the harness deliberately sets BootNext to choose that entry.
|
||||
Subsequent live boots also use verified one-shot BootNext selection. The same
|
||||
SATA DVD drive stays attached throughout, empty during installed boots; no ISO
|
||||
is available to those boots. This keeps OVMF's device entries stable without
|
||||
resetting firmware variables or changing BootOrder. Every deliberate BootNext
|
||||
write is read back and checked against the unchanged BootOrder. If OVMF prunes
|
||||
HydraOS's create-only entry after consuming BootNext, the harness recreates only
|
||||
that known ESP/loader entry before the next selection, and verifies that both
|
||||
registration and selection preserve the original order. Live test consoles
|
||||
is available to those boots. OVMF can prune the empty DVD's automatic boot entry
|
||||
despite that stable topology. The first live boot captures its verified EFI
|
||||
load-option bytes; before returning to live, the harness restores those exact
|
||||
bytes into an unused Boot#### variable only, verifies readback and unchanged
|
||||
BootOrder, then selects BootNext. Existing variables are never overwritten. If
|
||||
OVMF prunes HydraOS's create-only entry after consuming BootNext, the harness
|
||||
similarly recreates only that known ESP/loader entry before later selections.
|
||||
Initial installed selection still requires the installer's entry to exist.
|
||||
Every deliberate registration and BootNext write is checked against unchanged
|
||||
BootOrder. Live test consoles
|
||||
reduce kernel console verbosity so asynchronous mount messages cannot corrupt
|
||||
framed JSON; the messages remain in the guest kernel log.
|
||||
2. Boot without ISO, verify the packaged Fastfetch art and doctor, install version
|
||||
@@ -56,6 +60,14 @@ adds the following real guest operations:
|
||||
base, package database, world and EFI hashes and all preserved foreign invariants.
|
||||
Boot without ISO and verify version 1.0, current HOME and unchanged VM disk/profile
|
||||
data. The previous failed root and checkpoint remain on the disposable disk.
|
||||
Installed checks read the existing `/boot/efi` mount after verifying its device,
|
||||
filesystem and UUID against the storage marker; they never remount it read-only.
|
||||
|
||||
BootOrder preservation is checked immediately around each installer, checkpoint,
|
||||
restore and harness selection operation. It is not compared across firmware boots:
|
||||
OVMF itself removes empty-media entries from BootOrder. GPT, foreign partition
|
||||
bytes and foreign/fallback EFI bytes remain strict invariants across the entire
|
||||
sequence, including all reboots. Both scopes are explicit in `report.json`.
|
||||
|
||||
The loopback HTTP fixture serves only explicitly named in-memory TEST artifacts
|
||||
and their public key. It exposes no host directory, build tree, private key or
|
||||
|
||||
Reference in New Issue
Block a user