[virt-tools-list] [python-virtinst PATCH] Add basic support for VDI images.
Martin Kletzander
mkletzan at redhat.com
Mon Feb 4 16:02:03 UTC 2013
Handling of VDI images is fully supported in QEMU, for example, but we
still disallow using 'vdi' as a disk type.
---
virtconv/diskcfg.py | 5 +++++
virtconv/parsers/virtimage.py | 2 ++
virtinst/ImageParser.py | 10 ++++++++--
3 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/virtconv/diskcfg.py b/virtconv/diskcfg.py
index 978ecb1..3fbed4f 100644
--- a/virtconv/diskcfg.py
+++ b/virtconv/diskcfg.py
@@ -1,4 +1,5 @@
#
+# Copyright 2013 Red Hat, Inc.
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -35,6 +36,7 @@ DISK_FORMAT_VDISK = 3
DISK_FORMAT_QCOW = 4
DISK_FORMAT_QCOW2 = 5
DISK_FORMAT_COW = 6
+DISK_FORMAT_VDI = 7
DISK_TYPE_DISK = 0
DISK_TYPE_CDROM = 1
@@ -50,6 +52,7 @@ disk_suffixes = {
DISK_FORMAT_QCOW: ".qcow",
DISK_FORMAT_QCOW2: ".qcow2",
DISK_FORMAT_COW: ".cow",
+ DISK_FORMAT_VDI: ".vdi",
}
qemu_formats = {
@@ -59,6 +62,7 @@ qemu_formats = {
DISK_FORMAT_QCOW: "qcow",
DISK_FORMAT_QCOW2: "qcow2",
DISK_FORMAT_COW: "cow",
+ DISK_FORMAT_VDI: "vdi",
}
disk_format_names = {
@@ -69,6 +73,7 @@ disk_format_names = {
"qcow": DISK_FORMAT_QCOW,
"qcow2": DISK_FORMAT_QCOW2,
"cow": DISK_FORMAT_COW,
+ "vdi": DISK_FORMAT_VDI,
}
checksum_types = {
diff --git a/virtconv/parsers/virtimage.py b/virtconv/parsers/virtimage.py
index 7a561cf..15a9cd6 100644
--- a/virtconv/parsers/virtimage.py
+++ b/virtconv/parsers/virtimage.py
@@ -1,4 +1,5 @@
#
+# Copyright 2013 Red Hat, Inc.
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -246,6 +247,7 @@ class virtimage_parser(formats.parser):
ImageParser.Disk.FORMAT_VMDK: diskcfg.DISK_FORMAT_VMDK,
ImageParser.Disk.FORMAT_QCOW: diskcfg.DISK_FORMAT_QCOW,
ImageParser.Disk.FORMAT_QCOW2: diskcfg.DISK_FORMAT_QCOW2,
+ ImageParser.Disk.FORMAT_VDI: diskcfg.DISK_FORMAT_VDI,
}
fmt = None
diff --git a/virtinst/ImageParser.py b/virtinst/ImageParser.py
index 8b37078..ea074cf 100644
--- a/virtinst/ImageParser.py
+++ b/virtinst/ImageParser.py
@@ -1,7 +1,7 @@
# Sample code to parse an image XML description and
# spit out libvirt XML; will be hooked into virt-install
#
-# Copyright 2007 Red Hat, Inc.
+# Copyright 2007, 2013 Red Hat, Inc.
# David Lutterkort <dlutter at redhat.com>
#
# This program is free software; you can redistribute it and/or modify
@@ -205,6 +205,7 @@ class Disk:
FORMAT_QCOW = "qcow"
FORMAT_QCOW2 = "qcow2"
FORMAT_VMDK = "vmdk"
+ FORMAT_VDI = "vdi"
USE_SYSTEM = "system"
USE_USER = "user"
@@ -231,7 +232,12 @@ class Disk:
csumtype = xpathString(d, "@type")
csumvalue = xpathString(d, "")
self.csum[csumtype] = csumvalue
- formats = [Disk.FORMAT_RAW, Disk.FORMAT_QCOW, Disk.FORMAT_QCOW2, Disk.FORMAT_VMDK, Disk.FORMAT_ISO]
+ formats = [Disk.FORMAT_RAW,
+ Disk.FORMAT_QCOW,
+ Disk.FORMAT_QCOW2,
+ Disk.FORMAT_VMDK,
+ Disk.FORMAT_ISO,
+ Disk.FORMAT_VDI]
validate(formats.count(self.format) > 0,
_("The format for disk %s must be one of %s") %
(self.file, ",".join(formats)))
--
1.8.1.2
More information about the virt-tools-list
mailing list