X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fmanagers%2Faggregate_manager_pl.py;h=f890a6971023fbf2c3e9ee29f7e3e1622f60bac3;hb=3d7237fa0b5f2b4a60cb97c7fb3b6aecfd94558a;hp=e51e64f5dccd403b2e4e3800dfeb838e11e42c28;hpb=89b3f9326a2612be2d9bf035f41f83636118d1fa;p=sfa.git diff --git a/sfa/managers/aggregate_manager_pl.py b/sfa/managers/aggregate_manager_pl.py index e51e64f5..f890a697 100644 --- a/sfa/managers/aggregate_manager_pl.py +++ b/sfa/managers/aggregate_manager_pl.py @@ -7,16 +7,17 @@ import traceback import sys from types import StringTypes -from sfa.util.misc import * +from sfa.util.namespace import * from sfa.util.rspec import * from sfa.util.specdict import * from sfa.util.faults import * -from sfa.util.record import GeniRecord +from sfa.util.record import SfaRecord from sfa.util.policy import Policy from sfa.util.record import * from sfa.util.sfaticket import SfaTicket from sfa.server.registry import Registries from sfa.util.debug import log +from sfa.plc.slices import Slices import sfa.plc.peers as peers def delete_slice(api, hrn): @@ -40,20 +41,20 @@ def create_slice(api, hrn, rspec): # we transition the code to this module from sfa.plc.slices import Slices slices = Slices(api) - slices.create_slice(hrn, rspec) + slices.create_slice_aggregate(hrn, rspec) -def get_ticket(api, slice_hrn, rspec): +def get_ticket(api, slice_hrn, rspec, origin_hrn=None): # the the slice record registries = Registries(api) registry = registries[api.hrn] - credential = self.api.getCredential() + credential = api.getCredential() records = registry.resolve(credential, slice_hrn) # make sure we get a local slice record record = None for tmp_record in records: - if record['type'] == 'slice' and \ - not record['peer_authority']: + if tmp_record['type'] == 'slice' and \ + not tmp_record['peer_authority']: record = SliceRecord(dict=tmp_record) if not record: raise RecordNotFound(slice_hrn) @@ -70,22 +71,20 @@ def get_ticket(api, slice_hrn, rspec): 'initscripts': initscripts, 'slivers': slivers } - + # create the ticket - auth_hrn = record['authority'] - auth_info = api.auth.get_auth_info(auth_hrn) object_gid = record.get_gid_object() new_ticket = SfaTicket(subject = object_gid.get_subject()) new_ticket.set_gid_caller(api.auth.client_gid) new_ticket.set_gid_object(object_gid) - new_ticket.set_issuer(key=auth_info.get_pkey_object(), subject=auth_hrn) + new_ticket.set_issuer(key=api.key, subject=api.hrn) new_ticket.set_pubkey(object_gid.get_pubkey()) new_ticket.set_attributes(data) new_ticket.set_rspec(rspec) - new_ticket.set_parent(api.auth.hierarchy.get_auth_ticket(auth_hrn)) + #new_ticket.set_parent(api.auth.hierarchy.get_auth_ticket(auth_hrn)) new_ticket.encode() new_ticket.sign() - + return new_ticket.save_to_string(save_parents=True) def start_slice(api, hrn):