Omit space line in openrc file 41/38241/3
authorLinda Wang <wangwulin@huawei.com>
Thu, 27 Jul 2017 01:42:51 +0000 (01:42 +0000)
committerLinda Wang <wangwulin@huawei.com>
Thu, 27 Jul 2017 02:35:20 +0000 (02:35 +0000)
For alpine testing in compass OSA, sourcing openrc failed due to space
lines included.

Change-Id: I23166090a2fa7c2ce0aa03be581231cbb3cea34a
Signed-off-by: Linda Wang <wangwulin@huawei.com>
functest/tests/unit/utils/test_openstack_utils.py
functest/utils/openstack_utils.py

index 828fb3d..cabd18e 100644 (file)
@@ -390,8 +390,6 @@ class OSUtilsTesting(unittest.TestCase):
         self._test_source_credentials('export OS_TENANT_NAME =admin')
         self._test_source_credentials('export OS_TENANT_NAME = admin')
         self._test_source_credentials('export OS_TENANT_NAME = "admin"')
-        self._test_source_credentials('OS_TENANT_NAME', value='')
-        self._test_source_credentials('export OS_TENANT_NAME', value='')
         # This test will fail as soon as rc_file is fixed
         self._test_source_credentials(
             'export "\'OS_TENANT_NAME\'" = "\'admin\'"')
index 4f8d6c3..1bdfa25 100644 (file)
@@ -117,13 +117,15 @@ def get_credentials(other_creds={}):
 def source_credentials(rc_file):
     with open(rc_file, "r") as f:
         for line in f:
-            var = line.rstrip('"\n').replace('export ', '').split("=")
+            var = (line.rstrip('"\n').replace('export ', '').split("=")
+                   if re.search(r'(.*)=(.*)', line) else None)
             # The two next lines should be modified as soon as rc_file
             # conforms with common rules. Be aware that it could induce
             # issues if value starts with '
-            key = re.sub(r'^["\' ]*|[ \'"]*$', '', var[0])
-            value = re.sub(r'^["\' ]*|[ \'"]*$', '', "".join(var[1:]))
-            os.environ[key] = value
+            if var:
+                key = re.sub(r'^["\' ]*|[ \'"]*$', '', var[0])
+                value = re.sub(r'^["\' ]*|[ \'"]*$', '', "".join(var[1:]))
+                os.environ[key] = value
 
 
 def get_credentials_for_rally():