small updates here and there in all three files. The ipv6
authorGuilherme Sperb Machado <gsm@machados.org>
Fri, 3 Oct 2014 13:06:06 +0000 (15:06 +0200)
committerGuilherme Sperb Machado <gsm@machados.org>
Fri, 3 Oct 2014 13:06:06 +0000 (15:06 +0200)
update_ipv6addr-slivertag.py and ipv6.py were updated to support VS,
since "import libvirt" raises error and fails the build on -f14.

plugins/ipv6.py
plugins/update_ipv6addr_slivertag.py
tools.py

index a9df0e7..c97f2ff 100644 (file)
@@ -12,7 +12,7 @@ Requirements:
 * The prefix specified on 'sliversipv6prefix' tag must be at least 64
   It should vary between 1 and 64, since it is the minimum amount of bits to
   have native IPv6 auto-configuration.
-* The ipv6_address on 'sliversipv6prefix' tag can be any valid IPv6 address.
+* The ipv6_address in 'sliversipv6prefix' tag value can be any valid IPv6 address.
   E.g., 2002:1000:: or 2002:1000::1
 * It is the node manager/admin responsibility to properly set the IPv6 routing,
   since slivers should receive/send any kind of traffic.
@@ -24,11 +24,17 @@ import socket
 import re
 
 import tools
-import libvirt
 import uuid
-from sliver_libvirt import Sliver_Libvirt
 from xml.dom.minidom import parseString
 
+# TODO: is there anything better to do if the "libvirt", "sliver_libvirt",
+# and are not in place in the VS distro?
+try:
+    import libvirt
+    from sliver_libvirt import Sliver_Libvirt
+except:
+    logger.log("Could not import 'sliver_lxc' or 'libvirt'.")
+
 priority=4
 
 radvd_conf_file = '/etc/radvd.conf'
index 859b13d..ccf9490 100644 (file)
@@ -11,11 +11,17 @@ import socket
 import re
 
 import tools
-import libvirt
 import uuid
-from sliver_libvirt import Sliver_Libvirt
 from xml.dom.minidom import parseString
 
+# TODO: is there anything better to do if the "libvirt", "sliver_libvirt",
+# and are not in place in the VS distro?
+try:
+    import libvirt
+    from sliver_libvirt import Sliver_Libvirt
+except:
+    logger.log("Could not import 'sliver_lxc' or 'libvirt'.")
+
 priority=150
 
 ipv6addrtag = 'ipv6_address'
@@ -31,6 +37,10 @@ def get_sliver_tag_id_value(slivertags):
 
 def SetSliverTag(plc, data, tagname):
 
+    virt=tools.get_node_virt()
+    if virt!='lxc':
+        return
+
     for slice in data['slivers']:
         logger.log("update_ipv6addr_slivertag: starting with slice=%s" % (slice['name']) )
 
index 7dc2d1e..e88a1b2 100644 (file)
--- a/tools.py
+++ b/tools.py
@@ -236,8 +236,8 @@ def get_sliver_process(slice_name, process_cmdline):
             path = l.split(':')[0]
             comp = l.rsplit(':')[-1]
             slice_name_check = comp.rsplit('/')[-1]
-            # the lines above were added by Guilherme <gsm@machados.org>
-            # due to the ipv6 plugin requirements
+            # the lines below were added by Guilherme <gsm@machados.org>
+            # due to the ipv6 plugin requirements (LXC)
             virt=get_node_virt()
             if virt=='lxc':
                 slice_name_check = slice_name_check.rsplit('.')[0]