v0.6.0: bootable-ISO polish + close the 0.5.x chapter

Builds on v0.5.9's El Torito detection to make the boot menu honest and
clean, and confirms generic El Torito ISOs (ESXi/VMvisor installers, BSDs,
firmware tools) boot via iPXE sanboot with no special-casing:

- generate_boot_entries: an Unknown-family ISO now produces a sanboot entry
  only when it's actually bootable — it carries an El Torito catalog, OR it's
  a remote-share ISO we couldn't introspect (rev 0, assumed bootable). A
  locally-introspected ISO with no boot catalog (a data/appliance image like
  a VMware vCenter Server Appliance bundle) yields NO entry, so it stays out
  of the iPXE menu instead of offering a pick that always fails. ESXi
  installers (Unknown family + El Torito) surface under the installer menu
  and sanboot the raw ISO — backed by HTTP range reads, so size is moot.
- Dropped the stale "(SAN boot — may fail for >1GiB ISOs)" disclaimer and
  refreshed the SanBootIso doc: sanboot is the primary path for Windows and
  any El Torito image, and HTTP range reads remove the size limit.
- WebUI: renamed the dashboard panel "Images that won't boot with current
  settings" -> "Non-bootable images" (there's no setting that would make a
  data/appliance ISO boot).
- Tests: el_torito catalog detection + boot-entry generation across the
  ESXi / VCSA / remote-share cases.

Full v0.5.0->v0.5.9 compatibility sweep: clippy clean; entire workspace test
suite green (core 96, http-api 31+68, iso-store 61, dhcp 1, tftp 6, bin 2);
app.js syntax-checked.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
This commit is contained in:
Miles Ward
2026-06-05 13:02:30 -04:00
co-authored by Claude Opus 4.8
parent 06695c3d77
commit 5df0fd5972
5 changed files with 85 additions and 22 deletions
+1 -1
View File
@@ -12,7 +12,7 @@ members = [
]
[workspace.package]
version = "0.5.9"
version = "0.6.0"
edition = "2021"
rust-version = "1.95"
license = "MIT OR Apache-2.0"