def __init__(self, driver):
self.driver = driver
- def get_slice_and_slivers(self, slice_xrn):
+ def get_slice_and_slivers(self, slice_xrn, login=None):
"""
Returns a dict of slivers keyed on the sliver's node_id
"""
slice_name = slice_hrn
slices = self.driver.GetSlices(slice_filter= str(slice_name), \
- slice_filter_type = 'slice_hrn')
+ slice_filter_type = 'slice_hrn', login=login)
+
logger.debug("Slabaggregate api \tget_slice_and_slivers \
- slices %s self.driver.hrn %s" \
- %(slices, self.driver.hrn))
+ sfa_slice %s \r\n slices %s self.driver.hrn %s" \
+ %(sfa_slice, slices, self.driver.hrn))
if not slices:
return (sfa_slice, slivers)
#if isinstance(sfa_slice, list):
rspec_lease['component_id'] = slab_xrn.urn
#rspec_lease['component_id'] = hostname_to_urn(self.driver.hrn, \
#site, node['hostname'])
- rspec_lease['slice_id'] = lease['slice_id']
+ try:
+ rspec_lease['slice_id'] = lease['slice_id']
+ except KeyError:
+ #No info on the slice used in slab_xp table
+ pass
rspec_lease['start_time'] = lease['t_from']
rspec_lease['duration'] = (lease['t_until'] - lease['t_from']) \
/ grain
#rspec_leases.append(rspec_lease)
#return rspec_leases
#from plc/aggregate.py
- def get_rspec(self, slice_xrn=None, version = None, options={}):
+ def get_rspec(self, slice_xrn=None, login=None, version = None, options={}):
rspec = None
version_manager = VersionManager()
rspec_version = version_manager._get_version(version.type, \
version.version, 'manifest')
- slices, slivers = self.get_slice_and_slivers(slice_xrn)
+ slices, slivers = self.get_slice_and_slivers(slice_xrn, login)
#at this point sliver may be empty if no senslab job
#is running for this user/slice.
rspec = RSpec(version=rspec_version, user_options=options)