Skip to content

Instantly share code, notes, and snippets.

@jimrollenhagen
Created August 3, 2015 16:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jimrollenhagen/058dcf2674b8b3fd62e7 to your computer and use it in GitHub Desktop.
Save jimrollenhagen/058dcf2674b8b3fd62e7 to your computer and use it in GitHub Desktop.
@@ -311,14 +312,16 @@ class InstanceMetadata(object):
self.instance.key_name: self.instance.key_data
}
- keypair = keypair_obj.KeyPair.get_by_name(
- context.get_admin_context(), self.instance.user_id,
- self.instance.key_name)
- metadata['keys'] = [
- {'name': keypair.name,
- 'type': keypair.type,
- 'data': keypair.public_key}
- ]
+ # TODO(coreywright): removed as key_pairs db table doesn't
+ # exist in cell db
+ # keypair = keypair_obj.KeyPair.get_by_name(
+ # context.get_admin_context(), self.instance.user_id,
+ # self.instance.key_name)
+ # metadata['keys'] = [
+ # {'name': keypair.name,
+ # 'type': keypair.type,
+ # 'data': keypair.public_key}
+ # ]
@mgagne
Copy link

mgagne commented Aug 3, 2015

diff --git a/nova/api/metadata/base.py b/nova/api/metadata/base.py
index 382378f..4ffaef9 100644
--- a/nova/api/metadata/base.py
+++ b/nova/api/metadata/base.py
@@ -311,13 +311,15 @@ class InstanceMetadata(object):
                 self.instance.key_name: self.instance.key_data
             }

-            keypair = keypair_obj.KeyPair.get_by_name(
-                context.get_admin_context(), self.instance.user_id,
-                self.instance.key_name)
+            if self.instance.key_data.startswith(keypair_obj.KEYPAIR_TYPE_SSH):
+                key_type = keypair_obj.KEYPAIR_TYPE_SSH
+            else:
+                key_type = keypair_obj.KEYPAIR_TYPE_X509
+
             metadata['keys'] = [
-                {'name': keypair.name,
-                 'type': keypair.type,
-                 'data': keypair.public_key}
+                {'name': self.instance.key_name,
+                 'type': key_type,
+                 'data': self.instance.key_data}
             ]

         metadata['hostname'] = self._get_hostname()

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment