[libvirt] PATCH go-xml : add virtualport support

Karol Czeryna posted 1 patch 6 years, 5 months ago
Failed in applying to current master (apply log)
[libvirt] PATCH go-xml : add virtualport support
Posted by Karol Czeryna 6 years, 5 months ago
Hi guys!

Working with terraform libvirt plugin I discovered lack of openvswitch support - but in libvirt-go there is no support for virtualport entry.. this patch adds virtualport support.

diff --git a/network.go b/network.go
index 10c4dfc..0f072ec 100644
--- a/network.go
+++ b/network.go
@@ -36,6 +36,16 @@ type NetworkBridge struct {
 	MACTableManager string `xml:"macTableManager,attr,omitempty"`
 }

+type VirtualPortParameters struct {
+	InterfaceID string `xml:"interfaceid,attr,omitempty"`
+	ProfileID   string `xml:"profileid,attr,omitempty"`
+}
+
+type VirtualPort struct {
+	Type       string                  `xml:"type,attr,omitempty"`
+	Parameters []VirtualPortParameters `xml:"parameters,omitempty"`
+}
+
 type NetworkDomain struct {
 	Name      string `xml:"name,attr,omitempty"`
 	LocalOnly string `xml:"localOnly,attr,omitempty"`
@@ -152,6 +162,7 @@ type Network struct {
 	UUID                string          `xml:"uuid,omitempty"`
 	MAC                 *NetworkMAC     `xml:"mac"`
 	Bridge              *NetworkBridge  `xml:"bridge"`
+	VirtualPort         *VirtualPort    `xml:"virtualport"`
 	Forward             *NetworkForward `xml:"forward"`
 	Domain              *NetworkDomain  `xml:"domain"`
 	IPs                 []NetworkIP     `xml:"ip"`
diff --git a/network_test.go b/network_test.go
index 3efb278..10cce66 100644
--- a/network_test.go
+++ b/network_test.go
@@ -65,6 +65,14 @@ var networkTestData = []struct {
 			Bridge: &NetworkBridge{
 				Name: "virbr0",
 			},
+			VirtualPort: &VirtualPort{
+				Type: "openvswitch",
+				Parameters: []VirtualPortParameters{
+					VirtualPortParameters{
+						InterfaceID: "09b11c53-8b5c-4eeb-8f00-d84eaa0aaa4f",
+					},
+				},
+			},
 			Forward: &NetworkForward{
 				Mode: "nat",
 				NAT: &NetworkForwardNAT{
@@ -175,6 +183,9 @@ var networkTestData = []struct {
 			`<network>`,
 			`  <name>test</name>`,
 			`  <bridge name="virbr0"></bridge>`,
+			`  <virtualport type="openvswitch">`,
+			`    <parameters interfaceid="09b11c53-8b5c-4eeb-8f00-d84eaa0aaa4f"></parameters>`,
+			`  </virtualport>`,
 			`  <forward mode="nat">`,
 			`    <nat>`,
 			`      <address start="1.2.3.4" end="1.2.3.10"></address>`,


Best,
Karol




--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] PATCH go-xml : add virtualport support
Posted by Daniel P. Berrange 6 years, 5 months ago
On Wed, Nov 15, 2017 at 11:55:36AM +0000, Karol Czeryna wrote:
> Hi guys!
> 
> Working with terraform libvirt plugin I discovered lack of openvswitch support - but in libvirt-go there is no support for virtualport entry.. this patch adds virtualport support.

Reviewed-by: Daniel P. Berrange <berrange@redhat.com>

Thanks for your contribution, I will push to git shortly.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list