[virt-tools-list] [virt-manager PATCH 3/4] storage: add support for gluster fs pools.
Giuseppe Scrivano
gscrivan at redhat.com
Wed Feb 12 12:28:03 UTC 2014
Signed-off-by: Giuseppe Scrivano <gscrivan at redhat.com>
---
tests/storage.py | 3 +++
tests/xmlparse-xml/pool-gluster-out.xml | 9 +++++++++
tests/xmlparse-xml/pool-gluster.xml | 8 ++++++++
tests/xmlparse.py | 13 +++++++++++++
virtinst/storage.py | 10 ++++++----
5 files changed, 39 insertions(+), 4 deletions(-)
create mode 100644 tests/xmlparse-xml/pool-gluster-out.xml
create mode 100644 tests/xmlparse-xml/pool-gluster.xml
diff --git a/tests/storage.py b/tests/storage.py
index 7363a2c..547bd8b 100644
--- a/tests/storage.py
+++ b/tests/storage.py
@@ -214,6 +214,9 @@ class TestStorage(unittest.TestCase):
def testMpathPool(self):
createPool(self.conn, StoragePool.TYPE_MPATH, "pool-mpath")
+ def testGlusterPool(self):
+ createPool(self.conn, StoragePool.TYPE_GLUSTER, "pool-gluster")
+
def _enumerateCompare(self, name, pool_list):
for pool in pool_list:
pool.name = name + str(pool_list.index(pool))
diff --git a/tests/xmlparse-xml/pool-gluster-out.xml b/tests/xmlparse-xml/pool-gluster-out.xml
new file mode 100644
index 0000000..b38999a
--- /dev/null
+++ b/tests/xmlparse-xml/pool-gluster-out.xml
@@ -0,0 +1,9 @@
+<pool type="gluster">
+ <name>pool-gluster</name>
+ <uuid>10310811-7115-1161-0111-410310811711</uuid>
+ <source>
+ <host name="my.host"/>
+ <name>pool-gluster</name>
+ <dir path="/foo"/>
+ </source>
+</pool>
diff --git a/tests/xmlparse-xml/pool-gluster.xml b/tests/xmlparse-xml/pool-gluster.xml
new file mode 100644
index 0000000..1fb1276
--- /dev/null
+++ b/tests/xmlparse-xml/pool-gluster.xml
@@ -0,0 +1,8 @@
+<pool type="gluster">
+ <name>pool-gluster</name>
+ <uuid>10310811-7115-1161-0111-410310811711</uuid>
+ <source>
+ <host name="some.random.hostname"/>
+ <name>pool-gluster</name>
+ </source>
+</pool>
diff --git a/tests/xmlparse.py b/tests/xmlparse.py
index 4724f22..dcd6865 100644
--- a/tests/xmlparse.py
+++ b/tests/xmlparse.py
@@ -1050,6 +1050,19 @@ class XMLParseTest(unittest.TestCase):
utils.diff_compare(pool.get_xml_config(), outfile)
utils.test_create(conn, pool.get_xml_config(), "storagePoolDefineXML")
+ def testGlusterPool(self):
+ basename = "pool-gluster"
+ infile = "tests/storage-xml/%s.xml" % basename
+ outfile = "tests/xmlparse-xml/%s-out.xml" % basename
+ pool = virtinst.StoragePool(conn, parsexml=file(infile).read())
+
+ check = self._make_checker(pool)
+ check("host", "some.random.hostname", "my.host")
+ check("source_dir", None, "/foo")
+
+ utils.diff_compare(pool.get_xml_config(), outfile)
+ utils.test_create(conn, pool.get_xml_config(), "storagePoolDefineXML")
+
def testVol(self):
basename = "pool-dir-vol"
infile = "tests/xmlparse-xml/%s-in.xml" % basename
diff --git a/virtinst/storage.py b/virtinst/storage.py
index 8e0f8f9..98fcc7c 100644
--- a/virtinst/storage.py
+++ b/virtinst/storage.py
@@ -99,6 +99,7 @@ class StoragePool(_StorageObject):
TYPE_ISCSI = "iscsi"
TYPE_SCSI = "scsi"
TYPE_MPATH = "mpath"
+ TYPE_GLUSTER = "gluster"
# Pool type descriptions for use in higher level programs
_descs = {}
@@ -110,6 +111,7 @@ class StoragePool(_StorageObject):
_descs[TYPE_ISCSI] = _("iSCSI Target")
_descs[TYPE_SCSI] = _("SCSI Host Adapter")
_descs[TYPE_MPATH] = _("Multipath Device Enumerator")
+ _descs[TYPE_GLUSTER] = _("Gluster Filesystem")
@staticmethod
def get_pool_types():
@@ -384,9 +386,9 @@ class StoragePool(_StorageObject):
users = {
"source_path": [self.TYPE_FS, self.TYPE_NETFS, self.TYPE_LOGICAL,
self.TYPE_DISK, self.TYPE_ISCSI, self.TYPE_SCSI],
- "source_name": [self.TYPE_LOGICAL],
- "host": [self.TYPE_NETFS, self.TYPE_ISCSI],
- "source_dir" : [self.TYPE_NETFS],
+ "source_name": [self.TYPE_LOGICAL, self.TYPE_GLUSTER],
+ "source_dir" : [self.TYPE_GLUSTER, self.TYPE_NETFS],
+ "host": [self.TYPE_NETFS, self.TYPE_ISCSI, self.TYPE_GLUSTER],
"format": [self.TYPE_FS, self.TYPE_NETFS, self.TYPE_DISK],
"iqn": [self.TYPE_ISCSI],
"target_path" : [self.TYPE_DIR, self.TYPE_FS, self.TYPE_NETFS,
@@ -412,7 +414,7 @@ class StoragePool(_StorageObject):
return self.type in [
StoragePool.TYPE_DIR, StoragePool.TYPE_FS,
StoragePool.TYPE_NETFS, StoragePool.TYPE_LOGICAL,
- StoragePool.TYPE_DISK]
+ StoragePool.TYPE_DISK, StoragePool.TYPE_GLUSTER]
def get_vm_disk_type(self):
"""
--
1.8.5.3
More information about the virt-tools-list
mailing list