From: Tony Mack Date: Fri, 13 May 2011 18:42:12 +0000 (-0400) Subject: rspec converters now convert sliver tag X-Git-Tag: sfa-1.0-22~56 X-Git-Url: http://git.onelab.eu/?p=sfa.git;a=commitdiff_plain;h=2eeb80e1fc8491b53d9fdc953f6c0c2179a516f7 rspec converters now convert sliver tag --- diff --git a/sfa/rspecs/pg_rspec_converter.py b/sfa/rspecs/pg_rspec_converter.py index e060f3e6..3a77ad20 100755 --- a/sfa/rspecs/pg_rspec_converter.py +++ b/sfa/rspecs/pg_rspec_converter.py @@ -48,15 +48,23 @@ class PGRSpecConverter: # get nodes pg_nodes_elements = pg_rspec.get_node_elements() + nodes_with_slivers = pg_rspec.get_nodes_with_slivers() + print "nodes with slivers", nodes_with_slivers i = 1 for pg_node_element in pg_nodes_elements: - urn = pg_node_element.get('component_uuid') - hostname = Xrn.urn_split(urn)[-1] node_element = sfa_rspec.add_element('node', {'id': 'n'+str(i)}, parent=network_element) - hostname_element = sfa_rspec.add_element('hostname', parent=node_element, text=hostname) + urn = pg_node_element.xpath('@component_uuid | @component_id') + if urn: + urn = urn[0] + hostname = Xrn.urn_split(urn)[-1] + hostname_element = sfa_rspec.add_element('hostname', parent=node_element, text=hostname) + if hostname in nodes_with_slivers: + sfa_rspec.add_element('sliver', parent=node_element) + urn_element = sfa_rspec.add_element('urn', parent=node_element, text=urn) - # TODO: convert sliver element + + # just copy over remaining child elements for child in pg_node_element.getchildren(): node_element.append(transform(child).getroot()) i = i+1 diff --git a/sfa/rspecs/sfa_rspec_converter.py b/sfa/rspecs/sfa_rspec_converter.py index 75d9c0ff..a7a189b6 100755 --- a/sfa/rspecs/sfa_rspec_converter.py +++ b/sfa/rspecs/sfa_rspec_converter.py @@ -50,7 +50,10 @@ class SfaRSpecConverter: location_attrs['latitude'] = location.get('latitiue', 'None') location_attrs['longitude'] = location.get('longitude', 'None') pg_rspec.add_element('location', location_attrs, parent=node_element) - # TODO: convert sliver element + + sliver_element = sfa_node_element.find('sliver') + if sliver_element != None: + pg_rspec.add_element('sliver_type', {'name': 'planetlab-vnode'}, parent=node_element) return pg_rspec.toxml()