[WIP] tests/update_eve_image: cross-HV (kvm↔k) BaseOs upgrade test suite - #1196
Closed
eriknordmark wants to merge 5 commits into
Closed
[WIP] tests/update_eve_image: cross-HV (kvm↔k) BaseOs upgrade test suite#1196eriknordmark wants to merge 5 commits into
eriknordmark wants to merge 5 commits into
Conversation
eriknordmark
force-pushed
the
add-cross-hv-eve-tests
branch
5 times, most recently
from
June 18, 2026 09:26
9398f55 to
c5b9a71
Compare
eriknordmark
force-pushed
the
add-cross-hv-eve-tests
branch
3 times, most recently
from
July 1, 2026 22:57
3b3e2ff to
dc7c26d
Compare
Three eden escripts for the EVE-kvm to EVE-k cross-flavor BaseOs upgrade, registered in the suite: a base upgrade check, a ContentTree blob-reuse check (zero bytes re-downloaded after the switch), and an app+volume recreate check that also survives a controller reboot. The app is deployed as soon as the new-flavor rootfs is running, before the cluster is fully up, so the run exercises the device-side volumemgr park-and-retry instead of masking the longhorn/CDI readiness race. Signed-off-by: eriknordmark <erik@zededa.com> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Escripts driving the EVE-kvm to EVE-k boot-disk conversion without a geometry change: the base conversion round-trip and a conversion-refused negative case, plus prep-kvm-to-k-topology.sh, which builds the single-disk ZFS-on-boot persist pool the installer would. Run manually (not registered in CI) since they need purpose-built EVE images. Signed-off-by: eriknordmark <erik@zededa.com> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The resize (shrink+grow) and grow-only escripts that drive the actual small->large GPT repartition. They assert the partitions grew, the device passed through the converting state, blobs were reused across the conversion, and the TPM-sealed vault stayed locally unlocked across the geometry change. Includes the two READMEs describing the multi-image bringup. Run manually with a TPM-enabled bringup. Signed-off-by: eriknordmark <erik@zededa.com> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Escript that migrates a deployed app's qcow2 volume to a Longhorn PVC across the kvm->k conversion (ext4), asserting the app and its written data marker survive the conversion with no image re-download. Run manually. Signed-off-by: eriknordmark <erik@zededa.com> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
eriknordmark
force-pushed
the
add-cross-hv-eve-tests
branch
from
July 2, 2026 21:59
b3137b4 to
abe59c5
Compare
Add update_eve_image_kvm_to_k_geom, a partitions-only end-to-end test that drives an EVE-kvm -> EVE-k base-OS upgrade and asserts the boot disk ends at the full EVE-k target geometry of 2+2+10+10 GiB (ESP-A 2G, the reserved ESP-B 2G, and IMGA/IMGB 10G each), including creating the reserved ESP-B when the starting image lacks it. It is parameterized by the starting release and its expected partition sizes, so one escript covers the range of boot-disk geometries a fielded device may carry (e.g. 10.1.0 at 36M/300M, 12.1.0 at 36M/512M, 16.13.0 at 2G/4G, 17.0.0-rc1 at 2G/10G). The two ESPs share the "EFI System" GPT label and are distinguished by PARTUUID. Unlike the _resize/_volmig escripts this checks geometry only -- no app, content-tree, or vault-seal assertions -- so it runs without a TPM or a /config settle. README_kvm_to_k_geom.md documents the release matrix and how to run it. Signed-off-by: eriknordmark <erik@zededa.com> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
eriknordmark
force-pushed
the
add-cross-hv-eve-tests
branch
from
July 9, 2026 16:36
625d41b to
7fa6ddf
Compare
Contributor
Author
|
Superseded by #1209, which folds this branch's tests into a single branch ( |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
End-to-end eden tests for the EVE-kvm ↔ EVE-k cross-flavor BaseOs
upgrade, including the in-field boot-disk repartition (small → large
GPT geometry). They verify that OCI blobs are reused across the flavor
switch (no re-download), that a deployed app and its volume survive the
conversion and a controller-initiated reboot, and — for the resize
variants — that the partitions actually grow and the TPM-sealed vault
stays locally unlocked across the geometry change.
All scenarios live under
tests/update_eve_image/testdata/, each aself-contained escript (plus helper scripts and READMEs):
update_eve_image_cross_hv.txt— base cross-HV upgrade; IMGB reachesactiveon the alternate flavor.update_eve_image_cross_hv_with_contenttree.txt— pre-stages aContentTree, asserts zero bytes re-downloaded after the switch.
update_eve_image_cross_hv_with_app_recreate.txt— app + volumesurvive the switch and a reboot with no re-download.
update_eve_image_kvm_to_k{,_grow,_resize,_refused,_volmig}.txt—repartition variants asserting SMALL→LARGE partition growth,
BaseOsStatus.Convertingdevice state, blob reuse, local vault unlock(
VaultStatus.UnlockMethod), and (volmig) live app-volume migrationto a Longhorn PVC.
update_eve_image_kvm_to_k_geom.txt— a geometry-only matrix,parameterized by the starting release, asserting the boot disk ends
at the full EVE-k target 2+2+10+10 (ESP-A 2G, the reserved ESP-B 2G
at GPT Make it possible to use pre-built EVE artifacts (instead of building local ones) #7, IMGA/IMGB 10G) — including creating the reserved ESP-B
when the start image lacks it. One escript covers the range of
boot-disk geometries a fielded device may carry (10.1.0 at 36M/300M,
12.1.0 at 36M/512M, 16.13.0 at 2G/4G, 17.0.0-rc1 at 2G/10G). It checks
geometry only (no app/content-tree/vault-seal), so it needs no TPM or
/configsettle; the two ESPs share theEFI Systemlabel and aretold apart by PARTUUID. All four starts validated GREEN (see
README_kvm_to_k_geom.md).Dependency
These exercise EVE-side behavior that is not yet in eden's CI EVE image.
Do not enable in CI/CD until lf-edge/eve#6036 (kvm↔k BaseOs upgrade
with blob reuse) merges; the resize/volmig variants additionally need
an EVE build carrying the boot-disk repartition work, and the
geomvariant needs a build whose
storage-resizercreates the reservedESP-B (the ESP-B retrofit). Kept as a draft until then.