On 02/17/2015 09:42 PM, Antoni Segura Puimedon wrote:
> Midonet is an opensource virtual networking that over lays the IP
> network between hypervisors. Currently, such networks can be made
> with the openvswitch virtualport type.
>
> This patch, defines the schema and documentation that will serve
> as basis for the follow up patches that will add support to libvirt
> for using Midonet virtual ports for its interfaces.
>
> Signed-off-by: Antoni Segura Puimedon <toni+libvirt@midokura.com>
> ---
> docs/formatdomain.html.in | 34 ++++++++++++++++++++++++++++++++++
> docs/schemas/networkcommon.rng | 12 ++++++++++++
> 2 files changed, 46 insertions(+)
This patch should also have the parser/formatter changes (which implies
that it needs to be patch 2, with your current patch 2 placed first in
the series - the parser/formatter needs the changes to the enum). It
should also contain at least one new test case for qemuxml2xmltest
(entry added to tests/qemuxml2xmltest.c, and data files added to
tests/qemuxml2argvdata + tests/qemuxml2xmloutdata).
>
> diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
> index f6477c2..1c2bb45 100644
> --- a/docs/formatdomain.html.in
> +++ b/docs/formatdomain.html.in
> @@ -3652,6 +3652,40 @@
> </devices>
> ...</pre>
>
> + <p>
> + On hosts that support Open vSwitch on the kernel side and that have the
> + Midonet Host Agent configured,
Oh, so midonet is something on top of OVS? Or a variation on it? Before
we commit to this new type I want to make sure that it isn't better
handled by keeping it as type='openvswitch' with some other modifier
(probably not, but just want to be certain it's considered).
> it is also possible to connect to the
> + 'midonet' bridge device by adding a
> + <code><virtualport type='midonet'/></code> to the
> + interface definition. (<span class="since">Since
> + 1.2.13</span>). The Midonet virtualport type requires an
> + <code>interfaceid</code> attribute to its
> + <code><parameters></code> element. This interface id is the UUID
> + that specifies which port in the virtual network topology will be bound
> + to the interface.
> + </p>
> +<pre>
> + ...
> + <devices>
> + ...
> + <interface type='bridge'>
> + <source bridge='br0'/>
> + </interface>
> + <interface type='bridge'>
> + <source bridge='br1'/>
> + <target dev='vnet7'/>
> + <mac address="00:11:22:33:44:55"/>
> + </interface>
> + <interface type='bridge'>
> + <source bridge='midonet'/>
> + <virtualport type='midonet'>
> + <parameters interfaceid='0b2d64da-3d0e-431e-afdd-804415d6ebbb'/>
> + </virtualport>
> + </interface>
> + ...
> + </devices>
> + ...</pre>
> +
> <h5><a name="elementsNICSSlirp">Userspace SLIRP stack</a></h5>
>
> <p>
> diff --git a/docs/schemas/networkcommon.rng b/docs/schemas/networkcommon.rng
> index 162ea3d..cc8b1dc 100644
> --- a/docs/schemas/networkcommon.rng
> +++ b/docs/schemas/networkcommon.rng
> @@ -79,6 +79,18 @@
> </element>
> </group>
> <group>
> + <element name="virtualport">
> + <attribute name="type">
> + <value>midonet</value>
> + </attribute>
> + <element name="parameters">
> + <attribute name="interfaceid">
> + <ref name="UUID"/>
> + </attribute>
> + </element>
> + </element>
> + </group>
> + <group>
> <!-- use this when no type attribute is present -->
> <element name="virtualport">
> <optional>