we can no longer access the user from the key object, so just make up a random key...
authorTony Mack <tmack@paris.CS.Princeton.EDU>
Sat, 11 May 2013 01:04:42 +0000 (21:04 -0400)
committerTony Mack <tmack@paris.CS.Princeton.EDU>
Sat, 11 May 2013 01:04:42 +0000 (21:04 -0400)
planetstack/openstack/manager.py

index fdf09eb..b4697ce 100644 (file)
@@ -1,5 +1,7 @@
 import os
 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+import string
+import random
 
 from netaddr import IPAddress, IPNetwork
 from planetstack import settings
@@ -15,6 +17,10 @@ except:
 
 manager_enabled = Config().api_nova_enabled
 
+
+def random_string(size=6):
+    return ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(size))
+
 def require_enabled(callable):
     def wrapper(*args, **kwds):
         if manager_enabled and has_openstack:
@@ -75,7 +81,7 @@ class OpenStackManager:
     @require_enabled
     def save_key(self, key):
         if not key.nkey_id:
-            key_fields = {'name': key.user.email[:key.user.email.find('@')],
+            key_fields = {'name': random_string(8),
                           'key': key.key}
             nova_key = self.driver.create_keypair(**key_fields)
             key.nkey_id = nova_key.id