git://git.onelab.eu
/
sfa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
2c81e48
)
add add foreign users public keys when needed in createSlice
author
Tony Mack
<tmack@cs.princeton.edu>
Mon, 23 Mar 2009 20:13:45 +0000
(20:13 +0000)
committer
Tony Mack
<tmack@cs.princeton.edu>
Mon, 23 Mar 2009 20:13:45 +0000
(20:13 +0000)
geni/aggregate.py
patch
|
blob
|
history
diff --git
a/geni/aggregate.py
b/geni/aggregate.py
index
1e71859
..
5ae2c6f
100644
(file)
--- a/
geni/aggregate.py
+++ b/
geni/aggregate.py
@@
-394,13
+394,16
@@
class Aggregate(GeniServer):
person_record = person_records[0]
person_dict = person_record.as_dict()['plc_info']
persons = self.shell.GetPersons(self.auth, [person_dict['email']], ['person_id', 'key_ids'])
person_record = person_records[0]
person_dict = person_record.as_dict()['plc_info']
persons = self.shell.GetPersons(self.auth, [person_dict['email']], ['person_id', 'key_ids'])
+
+ # Create the person record
if not persons:
self.shell.AddPerson(self.auth, person_dict)
if not persons:
self.shell.AddPerson(self.auth, person_dict)
- else:
- person = persons[0]
self.shell.AddPersonToSlice(self.auth, person_dict['email'], login_base)
self.shell.AddPersonToSlice(self.auth, person_dict['email'], login_base)
- # XX Dont forget to add this person's public keys
-
+ # Add this person's public keys
+ for personkey in person_dict['keys']:
+ key = {'type': 'ssh', 'key': personkey}
+ self.shellAddPersonKey(self.auth, person_dict['email'], key)
+
# find out where this slice is currently running
nodelist = self.shell.GetNodes(self.auth, slice['node_ids'], ['hostname'])
hostnames = [node['hostname'] for node in nodelist]
# find out where this slice is currently running
nodelist = self.shell.GetNodes(self.auth, slice['node_ids'], ['hostname'])
hostnames = [node['hostname'] for node in nodelist]