cloudstack-mirror/test
Rene Peinthor 57671274d8
linstor: fix encrypted volume snapshot backup and restore (#13486)
Encrypted Linstor volumes use a LUKS layer inside the DRBD stack, so
the storage-layer snapshot device holds ciphertext while the DRBD
device CloudStack restores to is the decrypted view. Backing up the
raw snapshot and writing it back to the decrypted device corrupted the
volume (different data, unbootable root).

Back up encrypted snapshots from the decrypted DRBD device (forcing
the temporary-resource path) and store them as a LUKS-encrypted qcow2
using the volume passphrase, so snapshots are not kept in clear text
on secondary storage. On revert, decrypt the qcow2 and write plaintext
to the DRBD device; the LUKS layer re-encrypts it. The qemu-img shrink
is skipped for encrypted volumes (the DRBD device is already
net-sized).

Add an integration test (test_linstor_encrypted_snapshots.py): the
encrypted-root snapshot revert round-trip, that
create-volume-from-encrypted-snapshot is rejected by CloudStack core,
and a best-effort check that the backed-up qcow2 is LUKS-encrypted at
rest.
2026-07-10 12:50:33 +02:00
..
bindirbak pre-commit: add hook to trim trailing whitespace (#8205) 2024-05-28 09:01:30 +02:00
conf pre-commit fix mixed line endings in XML files (#10148) 2025-01-03 09:42:09 +01:00
integration linstor: fix encrypted volume snapshot backup and restore (#13486) 2026-07-10 12:50:33 +02:00
metadata pre-commit fix mixed line endings in XML files (#10148) 2025-01-03 09:42:09 +01:00
scripts pre-commit: remove trailing-whitespace from more file types (#10131) 2024-12-31 14:55:24 +05:30
systemvm pre-commit auto add license for all Markdown files (#11870) 2025-10-24 16:04:22 +05:30
pom.xml Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30