BUG FIX: Properly decodes ssh public keyfile 45/65545/1
authorParker Berberian <pberberian@iol.unh.edu>
Mon, 3 Dec 2018 18:38:37 +0000 (13:38 -0500)
committerParker Berberian <pberberian@iol.unh.edu>
Mon, 3 Dec 2018 18:38:37 +0000 (13:38 -0500)
Because of how Python3 changed how it handled strings,
the byte string read from the user's keyfile was not directly
serializable. This decodes the bytes into a unicode string, assuming UTF-8 encoding.

Change-Id: I5f723a61fb577fa6d4e76e701ef529521ab389ba
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
dashboard/src/api/admin.py
dashboard/src/api/models.py

index 3d32c78..8b2fcb3 100644 (file)
@@ -17,6 +17,7 @@ from api.models import (
     HardwareConfig,
     NetworkConfig,
     SoftwareConfig,
+    AccessConfig,
     AccessRelation,
     SoftwareRelation,
     HostHardwareRelation,
@@ -33,6 +34,7 @@ admin.site.register(OpnfvApiConfig)
 admin.site.register(HardwareConfig)
 admin.site.register(NetworkConfig)
 admin.site.register(SoftwareConfig)
+admin.site.register(AccessConfig)
 admin.site.register(AccessRelation)
 admin.site.register(SoftwareRelation)
 admin.site.register(HostHardwareRelation)
index 78ec920..b6bd79f 100644 (file)
@@ -652,7 +652,7 @@ class JobFactory(object):
                     revoke=False,
                     job=job,
                     context={
-                        "key": user.userprofile.ssh_public_key.read(),
+                        "key": user.userprofile.ssh_public_key.open().read().decode(encoding="UTF-8"),
                         "hosts": [host.labid for host in hosts]
                     }
                 )