X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fplanetlab%2Fplaggregate.py;h=bdece6c7dcc685225d51b7aee53a4f831662895e;hb=197405de249e9549850db1cad63fd6069ff855db;hp=d869cc1a01c7a5fcb38079c09792fe4c1afcdf77;hpb=b15b1d2107ffff749137078fc7fc386d5424f3f9;p=sfa.git diff --git a/sfa/planetlab/plaggregate.py b/sfa/planetlab/plaggregate.py index d869cc1a..bdece6c7 100644 --- a/sfa/planetlab/plaggregate.py +++ b/sfa/planetlab/plaggregate.py @@ -129,7 +129,16 @@ class PlAggregate: except ValueError: pass else: - names.add(xrn.pl_slicename()) + slice_hrn = xrn.get_hrn() + site_hrn = get_authority(slice_hrn) + top_auth_hrn = site_hrn.split('.')[0] + if top_auth_hrn == self.driver.hrn: + slice_name = hrn_to_pl_slicename(slice_hrn) + else: + login_base = '8'.join(site_hrn.split('.')) + slice_name = '_'.join([login_base, get_leaf(slice_hrn)]) + + names.add(slice_name) filter = {} if names: @@ -141,7 +150,7 @@ class PlAggregate: if not slices: return [] slice = slices[0] - slice['hrn'] = PlXrn(auth=self.driver.hrn, slicename=slice['name']).hrn + slice['hrn'] = slice_hrn # get sliver users persons = [] @@ -165,10 +174,10 @@ class PlAggregate: # construct user key info users = [] for person in persons: - name = person['email'][0:person['email'].index('@')] + person_urn = hrn_to_urn(self.driver.shell.GetPersonHrn(int(person['person_id'])), 'user') user = { 'login': slice['name'], - 'user_urn': Xrn('%s.%s' % (self.driver.hrn, name), type='user').urn, + 'user_urn': person_urn, 'keys': [keys[k_id]['key'] for k_id in person['key_ids'] if k_id in keys] } users.append(user) @@ -356,8 +365,8 @@ class PlAggregate: site_id=lease['site_id'] site=sites_dict[site_id] - rspec_lease['component_id'] = hostname_to_urn(self.driver.hrn, site['login_base'], lease['hostname']) - slice_hrn = slicename_to_hrn(self.driver.hrn, lease['name']) + rspec_lease['component_id'] = hrn_to_urn(self.driver.shell.GetNodeHrn(lease['hostname']), 'node') + slice_hrn = self.driver.shell.GetSliceHrn(lease['slice_id']) slice_urn = hrn_to_urn(slice_hrn, 'slice') rspec_lease['slice_id'] = slice_urn rspec_lease['start_time'] = lease['t_from']