Merge branch 'senslab2' of ssh://git.f-lab.fr/git/sfa into senslab2
[sfa.git] / sfa / senslab / slabaggregate.py
index f371dcb..f8ce7a3 100644 (file)
@@ -167,7 +167,7 @@ class SlabAggregate:
         #geni_available = options.get('geni_available')    
         #if geni_available:
             #filter['boot_state'] = 'boot'     
-        print>>sys.stderr, "\r\n \r\n \t get_nodes_and_links filter %s \r\n \r\n \t slivers %s nodes[0] %s " %(filter, slivers,nodes[0])
+       
         #filter.update({'peer_id': None})
         #nodes = self.driver.GetNodes(filter['hostname'])
         #print>>sys.stderr, "\r\n \r\n \t get_nodes_and_links nodes %s" %(nodes)
@@ -190,7 +190,7 @@ class SlabAggregate:
         #node_tags = self.get_node_tags(tags_filter)
        
         #links = self.get_links(sites_dict, nodes_dict, interfaces)
-        
+        reserved_nodes=self.driver.GetReservedNodes()
         rspec_nodes = []
         for node in nodes:
             # skip whitelisted nodes
@@ -209,8 +209,11 @@ class SlabAggregate:
             # do not include boot state (<available> element) in the manifest rspec
             if not slice:     
                 rspec_node['boot_state'] = node['boot_state']
+                if node['hostname'] in reserved_nodes:
+                    rspec_node['boot_state'] = "Reserved"
             rspec_node['exclusive'] = 'True'
             rspec_node['hardware_types'] = [HardwareType({'name': 'slab-node'})]
+
             # only doing this because protogeni rspec needs
             # to advertise available initscripts 
             #rspec_node['pl_initscripts'] = None