Kunalbehbud opened a new pull request, #13013:
URL: https://github.com/apache/cloudstack/pull/13013

   ## Summary
   - capture the active UEFI NVRAM file as a sidecar for KVM disk-only instance 
snapshots
   - restore and clean up that sidecar during revert, delete, and merge flows
   - block incompatible hosts during rolling upgrades and clear stale 
capability details on reconnect
   
   ## Details
   - extend the disk-only KVM snapshot commands and answers with optional NVRAM 
sidecar metadata
   - require both ordinary UEFI support and NVRAM-aware disk-only snapshot 
support before create, revert, delete-sidecar cleanup, or merge-sidecar cleanup 
continue on a host
   - resolve cleanup against the snapshot's own root primary store so storage 
migrations do not send sidecar deletion to the wrong pool
   - freeze, verify, and then suspend running UEFI VMs when `quiescevm=true` so 
firmware writes cannot race with the NVRAM sidecar copy
   - preserve successful snapshot metadata if post-snapshot thaw or resume 
fails, return the warning in the agent answer, and raise a management alert 
instead of losing the new backing-chain metadata
   - reject reverting UEFI disk-only snapshots that do not contain an NVRAM 
sidecar
   
   ## Testing
   - `mvn -pl 
engine/orchestration,engine/storage/snapshot,plugins/hypervisors/kvm -am 
-Dtest=AgentManagerImplTest,KvmFileBasedStorageVmSnapshotStrategyTest,LibvirtDiskOnlyVMSnapshotCommandWrapperTest
 -Dsurefire.failIfNoSpecifiedTests=false test`
   - live-tested on a 4.22.1 environment with a KVM UEFI VM
   - created a disk-only instance snapshot
   - reverted the snapshot and booted the VM successfully
   - deleted a parent snapshot and verified the merge path removed the old 
NVRAM sidecar
   - deliberately corrupted the active NVRAM after the merge, reverted again, 
verified the active NVRAM checksum matched the sidecar before boot, and booted 
the VM successfully
   
   ## Scope
   - this PR does not add support for `snapshotMemory=true` or other internal 
snapshots of UEFI VMs
   - the running `quiescevm=true` path is covered by regression tests here, but 
not by a separate live-environment E2E run


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to