Hi,

I'd like to propose a new feature to hotplug a new disk to a VM.

This feature will be implemented only on the UI side. The backend already has the methods needed to make it work.

Suppose a user wants to add a new disk to a running VM. Currently, they have to create an empty disk using other tools outside of Kimchi and put it into an existing storage pool. This might be challenging for some users, as it requires the use of other tools, possibly involving the command line (e.g. qemu-img). With this new feature, the user will only select the storage pool and the size of the new disk they want to add; Kimchi will create the disk in the appropriate pool and attach it to the VM.

In order to perform this feature, the UI will have to be updated to allow the following steps:

1) Select an existing VM, "Actions" > "Edit".
2) Switch to the tab "Storage".
3) Click on the button "+".
4) On "Device type", select "disk" .
5) On "Storage pool", select any storage pool.
6) On "Storage volume", select "New...".
7) Enter the desired disk size.
8) Click on the button "Attach".

Steps 6 and 7 are the ones related to this feature and they need to be implemented. The other steps already exist in the current UI.

When the user performs step 8, the UI should send the following requests to the server:

POST /storagepools/<pool>/storagevolumes {'name': <vol>, 'capacity': <size>}
POST /vms/<vm>/storages {'name': <vol>}

Those requests already work, they just have to be executed in that order in order to perform this new feature.

Any feedback will be very welcome.

Best regards,
Crístian.