[libvirt] [PATCH 04/14] docs: schemas: Extract RBD-specific data

Peter Krempa pkrempa at redhat.com
Wed Apr 26 17:52:34 UTC 2017


RBD driver supports specifying a snapshot image name or config file.
Create a define for RBD and move the specifics there.
---
 docs/schemas/domaincommon.rng | 50 ++++++++++++++++++++++++++++++++-----------
 1 file changed, 37 insertions(+), 13 deletions(-)

diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
index eca479594..05efea7f2 100644
--- a/docs/schemas/domaincommon.rng
+++ b/docs/schemas/domaincommon.rng
@@ -1521,24 +1521,12 @@
     </element>
   </define>

-  <define name="diskSourceNetwork">
-    <attribute name="type">
-      <value>network</value>
-    </attribute>
+  <define name="diskSourceNetworkProtocolRBD">
     <element name="source">
       <interleave>
         <attribute name="protocol">
           <choice>
-            <value>nbd</value>
             <value>rbd</value>
-            <value>sheepdog</value>
-            <value>gluster</value>
-            <value>iscsi</value>
-            <value>http</value>
-            <value>https</value>
-            <value>ftp</value>
-            <value>ftps</value>
-            <value>tftp</value>
           </choice>
         </attribute>
         <optional>
@@ -1568,6 +1556,42 @@
     </element>
   </define>

+  <define name="diskSourceNetworkProtocolGeneric">
+    <element name="source">
+      <interleave>
+        <attribute name="protocol">
+          <choice>
+            <value>nbd</value>
+            <value>sheepdog</value>
+            <value>gluster</value>
+            <value>iscsi</value>
+            <value>http</value>
+            <value>https</value>
+            <value>ftp</value>
+            <value>ftps</value>
+            <value>tftp</value>
+          </choice>
+        </attribute>
+        <optional>
+          <attribute name="name"/>
+        </optional>
+        <zeroOrMore>
+          <ref name="diskSourceNetworkHost"/>
+        </zeroOrMore>
+      </interleave>
+    </element>
+  </define>
+
+  <define name="diskSourceNetwork">
+    <attribute name="type">
+      <value>network</value>
+    </attribute>
+    <choice>
+      <ref name="diskSourceNetworkProtocolGeneric"/>
+      <ref name="diskSourceNetworkProtocolRBD"/>
+    </choice>
+  </define>
+
   <define name="diskSourceVolume">
     <attribute name="type">
       <value>volume</value>
-- 
2.12.2




More information about the libvir-list mailing list