X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fmethods%2Fget_key.py;h=9cec0ec51ab1c2ddb68365f0765c13d0c73269e9;hb=06b330f0ee047bdb107e43e82b1d7356c876bc15;hp=2a31a9194b30282368f91830ab6e71db2dc9b7df;hpb=d13fbe177456d837287731d26323d069db10885a;p=sfa.git diff --git a/sfa/methods/get_key.py b/sfa/methods/get_key.py index 2a31a919..9cec0ec5 100644 --- a/sfa/methods/get_key.py +++ b/sfa/methods/get_key.py @@ -1,15 +1,14 @@ -### $Id: $ -### $URL: $ import os import tempfile import commands from sfa.util.faults import * -from sfa.util.misc import * +from sfa.util.xrn import hrn_to_urn from sfa.util.method import Method from sfa.util.parameter import Parameter, Mixed from sfa.trust.auth import Auth -from sfa.util.genitable import * +from sfa.util.table import SfaTable from sfa.trust.certificate import Keypair +from sfa.trust.gid import create_uuid class get_key(Method): """ @@ -36,7 +35,7 @@ class get_key(Method): node = nodes[0] # look up the sfa record - table = GeniTable() + table = SfaTable() records = table.findObjects({'type': 'node', 'pointer': node['node_id']}) if not records: raise RecordNotFound("pointer:" + str(node['node_id'])) @@ -45,7 +44,8 @@ class get_key(Method): # generate a new keypair and gid uuid = create_uuid() pkey = Keypair(create=True) - gid_object = self.api.auth.hierarchy.create_gid(record['hrn'], uuid, pkey) + urn = hrn_to_urn(record['hrn'], record['type']) + gid_object = self.api.auth.hierarchy.create_gid(urn, uuid, pkey) gid = gid_object.save_to_string(save_parents=True) record['gid'] = gid record.set_gid(gid) @@ -64,6 +64,7 @@ class get_key(Method): key_dest="/etc/sfa/node.key" gid_dest="/etc/sfa/node.gid" scp = "/usr/bin/scp" + #identity = "/etc/planetlab/root_ssh_key.rsa" identity = "/etc/sfa/root_ssh_key" scp_options=" -i %(identity)s " % locals() scp_options+="-o StrictHostKeyChecking=no " % locals()