1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-11 12:46:49 +00:00

fix(instances): a disk on an LVM pool is not resized, the page says so instead of failing

libvirt's logical pool cannot change a volume's capacity, so every
resize of such a disk ended in a 500. Disks are resized one at a time;
VIR_ERR_NO_SUPPORT becomes a message naming the disk, and the other
disks still grow.

A live test creates an LVM pool from the storage page on a spare disk
(TEST_LIBVIRT_LVM_DEVICE; the Vagrant computes get /dev/vdb), attaches
new and existing volumes to stopped and running VMs as block disks, and
checks the refused resize in every state.
This commit is contained in:
catborise 2026-10-18 12:15:28 +03:00
parent a83b46d65d
commit c46212bb38
5 changed files with 198 additions and 13 deletions

4
Vagrantfile vendored
View file

@ -1,7 +1,8 @@
# Two disposable compute nodes for the live tests (README: Running tests), so
# that migration runs between them: AlmaLinux 10 with nested KVM, set up by
# dev/libvirt-bootstrap.sh, with a SASL user for TCP and the host user's SSH
# key for root (SASL user wvc, password wvc-test).
# key for root (SASL user wvc, password wvc-test). The empty second disk
# /dev/vdb is for the LVM tests (TEST_LIBVIRT_LVM_DEVICE).
Vagrant.configure(2) do |config|
config.vm.box = "almalinux/10"
@ -15,6 +16,7 @@ Vagrant.configure(2) do |config|
v.nested = true
v.cpu_mode = "host-passthrough"
v.video_type = "virtio" # EL10 hosts have no cirrus
v.storage :file, size: "4G"
end
# the bootstrap installs this checkout's gstfsd
config.vm.provision "file", source: "dev", destination: "/tmp/wvc/dev"