fix bug in fill_slice_record_info
authorTony Mack <tmack@paris.CS.Princeton.EDU>
Mon, 2 Jul 2012 02:23:09 +0000 (22:23 -0400)
committerTony Mack <tmack@paris.CS.Princeton.EDU>
Mon, 2 Jul 2012 02:23:09 +0000 (22:23 -0400)
sfa/openstack/nova_driver.py

index 2c49bc0..9b77322 100644 (file)
@@ -194,7 +194,7 @@ class NovaDriver(Driver):
             if tmp_tenant.name.startswith(tenant.name +"."):
                 for tmp_user in tmp_tenant.list_users():
                     if tmp_user.name == user.name:
-                        slice_hrn = ".",join([self.hrn, tmp_tenant.name]) 
+                        slice_hrn = ".".join([self.hrn, tmp_tenant.name]) 
                         slices.append(slice_hrn)   
         record['slices'] = slices
         roles = self.shell.auth_manager.roles.roles_for_user(user, tenant)
@@ -214,17 +214,21 @@ class NovaDriver(Driver):
         # look for users and pis in slice tenant
         for user in tenant.list_users():
             for role in self.shell.auth_manager.roles.roles_for_user(user, tenant):
-                hrn = ".".join([self.hrn, tenant.name, user.name])
                 if role.name.lower() == 'pi':
+                    user_tenant = self.shell.auth_manager.tenants.find(id=user.tenantId)
+                    hrn = ".".join([self.hrn, user_tenant.name, user.name])
                     pis.append(hrn)
                 elif role.name.lower() in ['user', 'member']:
+                    user_tenant = self.shell.auth_manager.tenants.find(id=user.tenantId)
+                    hrn = ".".join([self.hrn, user_tenant.name, user.name])
                     researchers.append(hrn)
 
         # look for pis in the slice's parent (site/organization) tenant
         for user in parent_tenant.list_users():
             for role in self.shell.auth_manager.roles.roles_for_user(user, parent_tenant):
                 if role.name.lower() == 'pi':
-                    hrn = ".".join([self.hrn, tenant.name, user.name])
+                    user_tenant = self.shell.auth_manager.tenants.find(id=user.tenantId)
+                    hrn = ".".join([self.hrn, user_tenant.name, user.name])
                     pis.append(hrn)
         record['name'] = tenant_name
         record['description'] = tenant.description