From: Tony Mack Date: Wed, 5 Dec 2012 16:27:37 +0000 (-0500) Subject: node elements in the manifest rspec should not contain available element X-Git-Tag: sfa-3.0-0~67 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=a13a3830bf1822329452f102ebbff7d2bcd94401;p=sfa.git node elements in the manifest rspec should not contain available element --- diff --git a/sfa/openstack/osaggregate.py b/sfa/openstack/osaggregate.py index 08b4ff81..dc006944 100644 --- a/sfa/openstack/osaggregate.py +++ b/sfa/openstack/osaggregate.py @@ -250,7 +250,7 @@ class OSAggregate: sliver = self.instance_to_sliver(instance) sliver['disk_image'] = disk_images slivers.append(sliver) - + rspec_node['available'] = 'true' rspec_node['slivers'] = slivers rspec_nodes.append(rspec_node) diff --git a/sfa/planetlab/plaggregate.py b/sfa/planetlab/plaggregate.py index 324c07c6..f38dd1c9 100644 --- a/sfa/planetlab/plaggregate.py +++ b/sfa/planetlab/plaggregate.py @@ -161,6 +161,10 @@ class PlAggregate: rspec_node['authority_id'] = hrn_to_urn(PlXrn.site_hrn(self.driver.hrn, site['login_base']), 'authority+sa') # do not include boot state ( element) in the manifest rspec rspec_node['boot_state'] = node['boot_state'] + if node['boot_state'] == 'boot': + rspec_node['available'] = 'true' + else: + rspec_node['available'] = 'false' rspec_node['exclusive'] = 'false' rspec_node['hardware_types'] = [HardwareType({'name': 'plab-pc'}), HardwareType({'name': 'pc'})] @@ -373,6 +377,8 @@ class PlAggregate: if sliver['slice_ids_whitelist'] and sliver['slice_id'] not in sliver['slice_ids_whitelist']: continue rspec_node = self.sliver_to_rspec_node(sliver, sites, interfaces, node_tags, pl_initscripts) + # manifest node element shouldn't contain available attribute + rspec_node.pop('available') geni_sliver = self.rspec_node_to_geni_sliver(rspec_node) sliver_allocation_record = sliver_allocation_dict.get(sliver['sliver_id']) if sliver_allocation_record: diff --git a/sfa/rspecs/elements/versions/pgv2Node.py b/sfa/rspecs/elements/versions/pgv2Node.py index 88787b52..fc5de15f 100644 --- a/sfa/rspecs/elements/versions/pgv2Node.py +++ b/sfa/rspecs/elements/versions/pgv2Node.py @@ -40,11 +40,8 @@ class PGv2Node: # for interface in node.get('interfaces', []): # node_elem.add_instance('interface', interface, ['component_id', 'client_id']) # set available element - if node.get('boot_state'): - if node.get('boot_state').lower() == 'boot': - available_elem = node_elem.add_element('available', now='true') - else: - available_elem = node_elem.add_element('available', now='false') + if node.get('available'): + available_elem = node_elem.add_element('available', now=node['available']) # add services PGv2Services.add_services(node_elem, node.get('services', [])) # add slivers