From: Tony Mack Date: Thu, 18 Oct 2012 21:06:36 +0000 (-0400) Subject: merge X-Git-Tag: sfa-3.0-0~112 X-Git-Url: http://git.onelab.eu/?p=sfa.git;a=commitdiff_plain;h=7c97b4323a2ee8c49cf250eb39a36c7609f2b468;hp=-c merge --- 7c97b4323a2ee8c49cf250eb39a36c7609f2b468 diff --combined sfa/planetlab/plaggregate.py index 5da16936,e66b4140..ece53ba0 --- a/sfa/planetlab/plaggregate.py +++ b/sfa/planetlab/plaggregate.py @@@ -147,7 -147,7 +147,7 @@@ class PlAggregate # only doing this because protogeni rspec needs # to advertise available initscripts rspec_node['pl_initscripts'] = pl_initscripts.values() - # add site/interface info to nodes. + # add site/interface info to nodes. # assumes that sites, interfaces and tags have already been prepared. if site['longitude'] and site['latitude']: location = Location({'longitude': site['longitude'], 'latitude': site['latitude'], 'country': 'unknown'}) @@@ -167,14 -167,17 +167,14 @@@ interface['client_id'] = "%s:%s" % (node['node_id'], if_id) rspec_node['interfaces'].append(interface) if_count+=1 - tags = [PLTag(node_tags[tag_id]) for tag_id in node['node_tag_ids']] rspec_node['tags'] = tags return rspec_node - def sliver_to_rspec_node(self, sliver): + def sliver_to_rspec_node(self, sliver, sites, interfaces, node_tags, pl_initscripts): # get the granularity in second for the reservation system grain = self.driver.shell.GetLeaseGranularity() - if sliver['slice_ids_whitelist'] and sliver['slice_id'] not in sliver['slice_ids_whitelist']: - return # (was: continue) - rspec_node = self.get_rspec_node(node, sites_dict, interfaces, node_tags, pl_initscripts, grain) + rspec_node = self.get_rspec_node(node, sites, interfaces, node_tags, pl_initscripts, grain) # xxx how to retrieve site['login_base'] rspec_node['expires'] = datetime_to_string(utcparse(slice[0]['expires'])) # remove interfaces from manifest @@@ -195,6 -198,7 +195,6 @@@ login = Login({'authentication': 'ssh-keys', 'hostname': node['hostname'], 'port':'22', 'username': sliver['name']}) service = Services({'login': login}) rspec_node['services'] = [service] - rspec_nodes.append(rspec_node) return rspec_node def get_slice_tags(self, slices): @@@ -350,7 -354,7 +350,7 @@@ for sliver in slivers: if sliver['slice_ids_whitelist'] and sliver['slice_id'] not in sliver['slice_ids_whitelist']: continue - rspec_node = self.sliver_to_rspec_node(sites, interfaces, node_tags) + rspec_node = self.sliver_to_rspec_node(sliver, sites, interfaces, node_tags, pl_initscripts) geni_sliver = self.rspec_node_to_geni_sliver(rspec_node) rspec_nodes.append(rspec_node) geni_slivers.append(geni_sliver) @@@ -372,7 -376,7 +372,13 @@@ rspec.version.add_leases(leases) ++<<<<<<< HEAD:sfa/planetlab/plaggregate.py + return {'geni_urn': urns[0], + 'geni_rspec': rspec.toxml(), + 'geni_slivers': geni_slivers} ++======= + return {'geni_urn': urns[0], + 'geni_rspec': rspec.toxml(), + 'geni_slivers': geni_slivers} ++>>>>>>> 3acb26e0ac5bc5de68effe62d0878ba674e40369:sfa/planetlab/plaggregate.py