Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions virttest/utils_libvirt/libvirt_disk.py
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,26 @@ def create_disk(
)


def get_all_disks_target(vm_name, options=""):
"""
Collect all VM disk target device names (e.g. 'vda', 'vdb') from dumpxml.

:param vm_name: name of the VM to inspect
:param options: extra options passed to virsh dumpxml (optional)
:return: list[str] of target device names
"""
vmx = vm_xml.VMXML.new_from_dumpxml(vm_name, options=options)
if vmx is None:
LOG.debug("VMXML.new_from_dumpxml(%s) returned None", vm_name)
return []
target_devs = []
for disk in (vmx.get_devices("disk") or []):
target_dev = (disk.target or {}).get("dev")
if target_dev:
target_devs.append(target_dev)
LOG.debug("Target devs are %s", target_devs)
return target_devs

def create_primitive_disk_xml(
type_name,
disk_device,
Expand Down
Loading