summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMonty Taylor <mordred@inaugust.com>2015-08-18 16:27:08 -0700
committerMonty Taylor <mordred@inaugust.com>2015-08-18 18:13:42 -0700
commit2726843ee54a3c9f061b9ed2451d080f459e4f38 (patch)
treea104c8a158ab1cfb2b757ff8356061cdee936f58
parent3703e230a55f56e13662a36fd15517c126d10ac0 (diff)
downloados-client-config-2726843ee54a3c9f061b9ed2451d080f459e4f38.tar.gz
Do not treat project_name and project_id the same
There are clouds where doing this is not working. Change-Id: I1d2e71b2a6ad22eb5070b92448779f2e9df71e4a
-rw-r--r--os_client_config/config.py6
-rw-r--r--os_client_config/tests/base.py6
-rw-r--r--os_client_config/tests/test_config.py4
3 files changed, 10 insertions, 6 deletions
diff --git a/os_client_config/config.py b/os_client_config/config.py
index 1542f2f..d698378 100644
--- a/os_client_config/config.py
+++ b/os_client_config/config.py
@@ -288,9 +288,9 @@ class OpenStackConfig(object):
def _fix_backwards_project(self, cloud):
# Do the lists backwards so that project_name is the ultimate winner
mappings = {
- 'project_name': ('tenant_id', 'tenant-id',
- 'project_id', 'project-id',
- 'tenant_name', 'tenant-name',
+ 'project_id': ('tenant_id', 'tenant-id',
+ 'project_id', 'project-id'),
+ 'project_name': ('tenant_name', 'tenant-name',
'project_name', 'project-name'),
}
for target_key, possible_values in mappings.items():
diff --git a/os_client_config/tests/base.py b/os_client_config/tests/base.py
index 569b52e..89e04c0 100644
--- a/os_client_config/tests/base.py
+++ b/os_client_config/tests/base.py
@@ -132,4 +132,8 @@ class TestCase(base.BaseTestCase):
self.assertIsNone(cc.cloud)
self.assertIn('username', cc.auth)
self.assertEqual('testuser', cc.auth['username'])
- self.assertEqual('testproject', cc.auth['project_name'])
+ self.assertTrue('project_name' in cc.auth or 'project_id' in cc.auth)
+ if 'project_name' in cc.auth:
+ self.assertEqual('testproject', cc.auth['project_name'])
+ elif 'project_id' in cc.auth:
+ self.assertEqual('testproject', cc.auth['project_id'])
diff --git a/os_client_config/tests/test_config.py b/os_client_config/tests/test_config.py
index 6bb65fc..332e4d3 100644
--- a/os_client_config/tests/test_config.py
+++ b/os_client_config/tests/test_config.py
@@ -89,13 +89,13 @@ class TestConfig(base.TestCase):
c = config.OpenStackConfig(config_files=[self.cloud_yaml],
vendor_files=[self.vendor_yaml])
cc = c.get_one_cloud('_test-cloud-int-project_')
- self.assertEqual('12345', cc.auth['project_name'])
+ self.assertEqual('12345', cc.auth['project_id'])
def test_get_one_cloud_with_hyphenated_project_id(self):
c = config.OpenStackConfig(config_files=[self.cloud_yaml],
vendor_files=[self.vendor_yaml])
cc = c.get_one_cloud('_test_cloud_hyphenated')
- self.assertEqual('12345', cc.auth['project_name'])
+ self.assertEqual('12345', cc.auth['project_id'])
def test_no_environ(self):
c = config.OpenStackConfig(config_files=[self.cloud_yaml],