Detect admin or Admin role 37/60137/1
authorCédric Ollivier <cedric.ollivier@orange.com>
Mon, 23 Jul 2018 20:59:11 +0000 (22:59 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Mon, 23 Jul 2018 20:59:11 +0000 (22:59 +0200)
As Keystone roles are case insensitive, Admin is checked as well.

Change-Id: I28a611add7890c3188a289d1e24c043d88c34ea1
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
functest/opnfv_tests/openstack/shaker/shaker.py

index 4f77448..51244e2 100644 (file)
@@ -58,8 +58,14 @@ class Shaker(singlevm.SingleVm2):
         assert self.ssh
         endpoint = self.get_public_auth_url(self.orig_cloud)
         self.__logger.debug("keystone endpoint: %s", endpoint)
+        if self.orig_cloud.get_role("admin"):
+            role_name = "admin"
+        elif self.orig_cloud.get_role("Admin"):
+            role_name = "Admin"
+        else:
+            raise Exception("Cannot detect neither admin nor Admin")
         self.orig_cloud.grant_role(
-            "admin", user=self.project.user.id,
+            role_name, user=self.project.user.id,
             project=self.project.project.id,
             domain=self.project.domain.id)
         if not self.orig_cloud.get_role("heat_stack_owner"):