Get initscripts from pgv2 and geniv3 rspecs
authorMohamed Larabi <mohamed.larabi@inria.fr>
Thu, 19 Sep 2013 13:54:33 +0000 (15:54 +0200)
committerMohamed Larabi <mohamed.larabi@inria.fr>
Wed, 2 Oct 2013 13:31:07 +0000 (15:31 +0200)
sfa/rspecs/elements/versions/pgv2Node.py

index a59116a..f14e1f8 100644 (file)
@@ -119,14 +119,31 @@ class PGv2Node:
             
             # get slivers
             node['slivers'] = PGv2SliverType.get_slivers(node_elem)    
-
-            available_elems = node_elem.xpath('./default:available | ./available')
+            
+            # get initscripts
+            initscript_elems = node_elem.xpath('./planetlab:initscript | ./initscript')
+            if len(initscript_elems) > 0:
+                for initscript_elem in initscript_elems:
+                    if 'name' in initscript_elem.attrib:
+                        node['pl_initscripts']= initscript_elem.attrib
+                        
+                    
+            # get boot state
+           available_elems = node_elem.xpath('./default:available | ./available')
             if len(available_elems) > 0 and 'now' in available_elems[0].attrib:
                 if available_elems[0].attrib.get('now', '').lower() == 'true': 
                     node['boot_state'] = 'boot'
                 else: 
                     node['boot_state'] = 'disabled' 
 
+            # get initscripts
+            node['pl_initscripts'] = []
+            initscript_elems = node_elem.xpath('./default:sliver_type/planetlab:initscript | ./sliver_type/initscript')
+            if len(initscript_elems) > 0:
+                for initscript_elem in initscript_elems:
+                    if 'name' in initscript_elem.attrib:
+                        node['pl_initscripts'].append(initscript_elem.attrib)
+
             # get node tags
             tag_elems = node_elem.xpath('./planetlab:attribute | ./attribute')
             node['tags'] = []