python3: Use from future import unicode_literals

use  "from future import unicode_literals" instead of u""

To the road to Python3, a possible next step would be to use the from __future__ import unicode_literals
and remove the u'' prefixes, as it is not supported in Python3.

Change-Id: Ic7afb3cf2d8dfad47b8a1626ab264f6d4f50d00e
Signed-off-by: Chuck Short <chuck.short@canonical.com>
This commit is contained in:
Chuck Short
2013-08-23 10:02:01 -04:00
committed by Morgan Fainberg
parent 29f8b987a9
commit c27800ee78
4 changed files with 330 additions and 320 deletions

View File

@@ -12,6 +12,8 @@
# All configuration values have a default; values that are commented out # All configuration values have a default; values that are commented out
# serve to show the default. # serve to show the default.
from __future__ import unicode_literals
import os import os
import sys import sys
import pbr.version import pbr.version
@@ -49,8 +51,8 @@ source_suffix = '.rst'
master_doc = 'index' master_doc = 'index'
# General information about the project. # General information about the project.
project = u'python-keystoneclient' project = 'python-keystoneclient'
copyright = u'OpenStack Contributors' copyright = 'OpenStack Contributors'
# The version info for the project you're documenting, acts as replacement for # The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the # |version| and |release|, also used in various other places throughout the
@@ -100,11 +102,11 @@ pygments_style = 'sphinx'
#modindex_common_prefix = [] #modindex_common_prefix = []
# Grouping the document tree for man pages. # Grouping the document tree for man pages.
# List of tuples 'sourcefile', 'target', u'title', u'Authors name', 'manual' # List of tuples 'sourcefile', 'target', 'title', 'Authors name', 'manual'
man_pages = [ man_pages = [
('man/keystone', 'keystone', u'Client for OpenStack Identity API', ('man/keystone', 'keystone', 'Client for OpenStack Identity API',
[u'OpenStack Contributors'], 1), ['OpenStack Contributors'], 1),
] ]
# -- Options for HTML output -------------------------------------------------- # -- Options for HTML output --------------------------------------------------
@@ -196,8 +198,8 @@ htmlhelp_basename = 'python-keystoneclientdoc'
# . # .
latex_documents = [ latex_documents = [
('index', 'python-keystoneclient.tex', ('index', 'python-keystoneclient.tex',
u'python-keystoneclient Documentation', 'python-keystoneclient Documentation',
u'Nebula Inc, based on work by Rackspace and Jacob Kaplan-Moss', 'Nebula Inc, based on work by Rackspace and Jacob Kaplan-Moss',
'manual'), 'manual'),
] ]

View File

@@ -14,6 +14,8 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from __future__ import unicode_literals
import testtools import testtools
from keystoneclient.contrib.ec2 import utils from keystoneclient.contrib.ec2 import utils
@@ -86,7 +88,7 @@ class Ec2SignerTest(testtools.TestCase):
credentials = {'host': '127.0.0.1', credentials = {'host': '127.0.0.1',
'verb': 'GET', 'verb': 'GET',
'path': '/v1/', 'path': '/v1/',
'params': {'SignatureVersion': u'2', 'params': {'SignatureVersion': '2',
'AWSAccessKeyId': self.access}} 'AWSAccessKeyId': self.access}}
signature = self.signer.generate(credentials) signature = self.signer.generate(credentials)
expected = 'odsGmT811GffUO0Eu13Pq+xTzKNIjJ6NhgZU74tYX/w=' expected = 'odsGmT811GffUO0Eu13Pq+xTzKNIjJ6NhgZU74tYX/w='
@@ -97,7 +99,7 @@ class Ec2SignerTest(testtools.TestCase):
credentials = {'host': '127.0.0.1', credentials = {'host': '127.0.0.1',
'verb': 'GET', 'verb': 'GET',
'path': '/v1/', 'path': '/v1/',
'params': {'SignatureVersion': u'2', 'params': {'SignatureVersion': '2',
'AWSAccessKeyId': self.access}} 'AWSAccessKeyId': self.access}}
self.signer.hmac_256 = None self.signer.hmac_256 = None
signature = self.signer.generate(credentials) signature = self.signer.generate(credentials)

View File

@@ -12,166 +12,169 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from __future__ import unicode_literals
UNSCOPED_TOKEN = { UNSCOPED_TOKEN = {
u'access': {u'serviceCatalog': {}, 'access': {'serviceCatalog': {},
u'token': {u'expires': u'2012-10-03T16:58:01Z', 'token': {'expires': '2012-10-03T16:58:01Z',
u'id': u'3e2813b7ba0b4006840c3825860b86ed'}, 'id': '3e2813b7ba0b4006840c3825860b86ed'},
u'user': {u'id': u'c4da488862bd435c9e6c0275a0d0e49a', 'user': {'id': 'c4da488862bd435c9e6c0275a0d0e49a',
u'name': u'exampleuser', 'name': 'exampleuser',
u'roles': [], 'roles': [],
u'roles_links': [], 'roles_links': [],
u'username': u'exampleuser'} 'username': 'exampleuser'}
} }
} }
PROJECT_SCOPED_TOKEN = { PROJECT_SCOPED_TOKEN = {
u'access': { 'access': {
u'serviceCatalog': [{ 'serviceCatalog': [{
u'endpoints': [{ 'endpoints': [{
u'adminURL': u'http://admin:8776/v1/225da22d3ce34b15877ea70b2a575f58', 'adminURL': 'http://admin:8776/v1/225da22d3ce34b15877ea70b2a575f58',
u'internalURL': 'internalURL':
u'http://internal:8776/v1/225da22d3ce34b15877ea70b2a575f58', 'http://internal:8776/v1/225da22d3ce34b15877ea70b2a575f58',
u'publicURL': 'publicURL':
u'http://public.com:8776/v1/225da22d3ce34b15877ea70b2a575f58', 'http://public.com:8776/v1/225da22d3ce34b15877ea70b2a575f58',
u'region': u'RegionOne' 'region': 'RegionOne'
}], }],
u'endpoints_links': [], 'endpoints_links': [],
u'name': u'Volume Service', 'name': 'Volume Service',
u'type': u'volume'}, 'type': 'volume'},
{u'endpoints': [{ {'endpoints': [{
u'adminURL': u'http://admin:9292/v1', 'adminURL': 'http://admin:9292/v1',
u'internalURL': u'http://internal:9292/v1', 'internalURL': 'http://internal:9292/v1',
u'publicURL': u'http://public.com:9292/v1', 'publicURL': 'http://public.com:9292/v1',
u'region': u'RegionOne'}], 'region': 'RegionOne'}],
u'endpoints_links': [], 'endpoints_links': [],
u'name': u'Image Service', 'name': 'Image Service',
u'type': u'image'}, 'type': 'image'},
{u'endpoints': [{ {'endpoints': [{
u'adminURL': u'http://admin:8774/v2/225da22d3ce34b15877ea70b2a575f58', 'adminURL': 'http://admin:8774/v2/225da22d3ce34b15877ea70b2a575f58',
u'internalURL': u'http://internal:8774/v2/225da22d3ce34b15877ea70b2a575f58', 'internalURL': 'http://internal:8774/v2/225da22d3ce34b15877ea70b2a575f58',
u'publicURL': u'http://public.com:8774/v2/225da22d3ce34b15877ea70b2a575f58', 'publicURL': 'http://public.com:8774/v2/225da22d3ce34b15877ea70b2a575f58',
u'region': u'RegionOne'}], 'region': 'RegionOne'}],
u'endpoints_links': [], 'endpoints_links': [],
u'name': u'Compute Service', 'name': 'Compute Service',
u'type': u'compute'}, 'type': 'compute'},
{u'endpoints': [{ {'endpoints': [{
u'adminURL': u'http://admin:8773/services/Admin', 'adminURL': 'http://admin:8773/services/Admin',
u'internalURL': u'http://internal:8773/services/Cloud', 'internalURL': 'http://internal:8773/services/Cloud',
u'publicURL': u'http://public.com:8773/services/Cloud', 'publicURL': 'http://public.com:8773/services/Cloud',
u'region': u'RegionOne'}], 'region': 'RegionOne'}],
u'endpoints_links': [], 'endpoints_links': [],
u'name': u'EC2 Service', 'name': 'EC2 Service',
u'type': u'ec2'}, 'type': 'ec2'},
{u'endpoints': [{ {'endpoints': [{
u'adminURL': u'http://admin:35357/v2.0', 'adminURL': 'http://admin:35357/v2.0',
u'internalURL': u'http://internal:5000/v2.0', 'internalURL': 'http://internal:5000/v2.0',
u'publicURL': u'http://public.com:5000/v2.0', 'publicURL': 'http://public.com:5000/v2.0',
u'region': u'RegionOne'}], 'region': 'RegionOne'}],
u'endpoints_links': [], 'endpoints_links': [],
u'name': u'Identity Service', 'name': 'Identity Service',
u'type': u'identity'}], 'type': 'identity'}],
u'token': {u'expires': u'2012-10-03T16:53:36Z', 'token': {'expires': '2012-10-03T16:53:36Z',
u'id': u'04c7d5ffaeef485f9dc69c06db285bdb', 'id': '04c7d5ffaeef485f9dc69c06db285bdb',
u'tenant': {u'description': u'', 'tenant': {'description': '',
u'enabled': True, 'enabled': True,
u'id': u'225da22d3ce34b15877ea70b2a575f58', 'id': '225da22d3ce34b15877ea70b2a575f58',
u'name': u'exampleproject'}}, 'name': 'exampleproject'}},
u'user': {u'id': u'c4da488862bd435c9e6c0275a0d0e49a', 'user': {'id': 'c4da488862bd435c9e6c0275a0d0e49a',
u'name': u'exampleuser', 'name': 'exampleuser',
u'roles': [{u'id': u'edc12489faa74ee0aca0b8a0b4d74a74', 'roles': [{'id': 'edc12489faa74ee0aca0b8a0b4d74a74',
u'name': u'Member'}], 'name': 'Member'}],
u'roles_links': [], 'roles_links': [],
u'username': u'exampleuser'} 'username': 'exampleuser'}
} }
} }
AUTH_RESPONSE_BODY = { AUTH_RESPONSE_BODY = {
u'access': { 'access': {
u'token': { 'token': {
u'id': u'ab48a9efdfedb23ty3494', 'id': 'ab48a9efdfedb23ty3494',
u'expires': u'2010-11-01T03:32:15-05:00', 'expires': '2010-11-01T03:32:15-05:00',
u'tenant': { 'tenant': {
u'id': u'345', 'id': '345',
u'name': u'My Project' 'name': 'My Project'
} }
}, },
u'user': { 'user': {
u'id': u'123', 'id': '123',
u'name': u'jqsmith', 'name': 'jqsmith',
u'roles': [{ 'roles': [{
u'id': u'234', 'id': '234',
u'name': u'compute:admin' 'name': 'compute:admin'
}, { }, {
u'id': u'235', 'id': '235',
u'name': u'object-store:admin', 'name': 'object-store:admin',
u'tenantId': u'1' 'tenantId': '1'
}], }],
u'roles_links': [] 'roles_links': []
}, },
u'serviceCatalog': [{ 'serviceCatalog': [{
u'name': u'Cloud Servers', 'name': 'Cloud Servers',
u'type': u'compute', 'type': 'compute',
u'endpoints': [{ 'endpoints': [{
u'tenantId': u'1', 'tenantId': '1',
u'publicURL': u'https://compute.north.host/v1/1234', 'publicURL': 'https://compute.north.host/v1/1234',
u'internalURL': u'https://compute.north.host/v1/1234', 'internalURL': 'https://compute.north.host/v1/1234',
u'region': u'North', 'region': 'North',
u'versionId': u'1.0', 'versionId': '1.0',
u'versionInfo': u'https://compute.north.host/v1.0/', 'versionInfo': 'https://compute.north.host/v1.0/',
u'versionList': u'https://compute.north.host/u' 'versionList': 'https://compute.north.host/'
}, { }, {
u'tenantId': u'2', 'tenantId': '2',
u'publicURL': u'https://compute.north.host/v1.1/3456', 'publicURL': 'https://compute.north.host/v1.1/3456',
u'internalURL': u'https://compute.north.host/v1.1/3456', 'internalURL': 'https://compute.north.host/v1.1/3456',
u'region': u'North', 'region': 'North',
u'versionId': u'1.1', 'versionId': '1.1',
u'versionInfo': u'https://compute.north.host/v1.1/', 'versionInfo': 'https://compute.north.host/v1.1/',
u'versionList': u'https://compute.north.host/u' 'versionList': 'https://compute.north.host/'
}], }],
u'endpoints_links': [] 'endpoints_links': []
}, { }, {
u'name': u'Cloud Files', 'name': 'Cloud Files',
u'type': u'object-store', 'type': 'object-store',
u'endpoints': [{ 'endpoints': [{
u'tenantId': u'11', 'tenantId': '11',
u'publicURL': u'https://swift.north.host/v1/blah', 'publicURL': 'https://swift.north.host/v1/blah',
u'internalURL': u'https://swift.north.host/v1/blah', 'internalURL': 'https://swift.north.host/v1/blah',
u'region': u'South', 'region': 'South',
u'versionId': u'1.0', 'versionId': '1.0',
u'versionInfo': u'uri', 'versionInfo': 'uri',
u'versionList': u'uri' 'versionList': 'uri'
}, { }, {
u'tenantId': u'2', 'tenantId': '2',
u'publicURL': u'https://swift.north.host/v1.1/blah', 'publicURL': 'https://swift.north.host/v1.1/blah',
u'internalURL': u'https://compute.north.host/v1.1/blah', 'internalURL': 'https://compute.north.host/v1.1/blah',
u'region': u'South', 'region': 'South',
u'versionId': u'1.1', 'versionId': '1.1',
u'versionInfo': u'https://swift.north.host/v1.1/', 'versionInfo': 'https://swift.north.host/v1.1/',
u'versionList': u'https://swift.north.host/' 'versionList': 'https://swift.north.host/'
}], }],
u'endpoints_links': [{ 'endpoints_links': [{
u'rel': u'next', 'rel': 'next',
u'href': u'https://identity.north.host/v2.0/' 'href': 'https://identity.north.host/v2.0/'
u'endpoints?marker=2' 'endpoints?marker=2'
}] }]
}, { }, {
u'name': u'Image Servers', 'name': 'Image Servers',
u'type': u'image', 'type': 'image',
u'endpoints': [{ 'endpoints': [{
u'publicURL': u'https://image.north.host/v1/', 'publicURL': 'https://image.north.host/v1/',
u'internalURL': u'https://image-internal.north.host/v1/', 'internalURL': 'https://image-internal.north.host/v1/',
u'region': u'North' 'region': 'North'
}, { }, {
u'publicURL': u'https://image.south.host/v1/', 'publicURL': 'https://image.south.host/v1/',
u'internalURL': u'https://image-internal.south.host/v1/', 'internalURL': 'https://image-internal.south.host/v1/',
u'region': u'South' 'region': 'South'
}], }],
u'endpoints_links': [] 'endpoints_links': []
}], }],
u'serviceCatalog_links': [{ 'serviceCatalog_links': [{
u'rel': u'next', 'rel': 'next',
u'href': (u'https://identity.host/v2.0/endpoints?' 'href': ('https://identity.host/v2.0/endpoints?'
u'session=2hfh8Ar&marker=2') 'session=2hfh8Ar&marker=2')
}] }]
} }
} }

View File

@@ -12,248 +12,251 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from __future__ import unicode_literals
UNSCOPED_TOKEN = { UNSCOPED_TOKEN = {
u'token': { 'token': {
u'methods': [ 'methods': [
u'password' 'password'
], ],
u'catalog': {}, 'catalog': {},
u'expires_at': u'2010-11-01T03:32:15-05:00', 'expires_at': '2010-11-01T03:32:15-05:00',
u'user': { 'user': {
u'domain': { 'domain': {
u'id': u'4e6893b7ba0b4006840c3845660b86ed', 'id': '4e6893b7ba0b4006840c3845660b86ed',
u'name': u'exampledomain' 'name': 'exampledomain'
}, },
u'id': u'c4da488862bd435c9e6c0275a0d0e49a', 'id': 'c4da488862bd435c9e6c0275a0d0e49a',
u'name': u'exampleuser', 'name': 'exampleuser',
} }
} }
} }
DOMAIN_SCOPED_TOKEN = { DOMAIN_SCOPED_TOKEN = {
u'token': { 'token': {
u'methods': [ 'methods': [
u'password' 'password'
], ],
u'catalog': {}, 'catalog': {},
u'expires_at': u'2010-11-01T03:32:15-05:00', 'expires_at': '2010-11-01T03:32:15-05:00',
u'user': { 'user': {
u'domain': { 'domain': {
u'id': u'4e6893b7ba0b4006840c3845660b86ed', 'id': '4e6893b7ba0b4006840c3845660b86ed',
u'name': u'exampledomain' 'name': 'exampledomain'
}, },
u'id': u'c4da488862bd435c9e6c0275a0d0e49a', 'id': 'c4da488862bd435c9e6c0275a0d0e49a',
u'name': u'exampleuser', 'name': 'exampleuser',
}, },
u'domain': { 'domain': {
u'id': u'8e9283b7ba0b1038840c3842058b86ab', 'id': '8e9283b7ba0b1038840c3842058b86ab',
u'name': u'anotherdomain' 'name': 'anotherdomain'
}, },
} }
} }
PROJECT_SCOPED_TOKEN = { PROJECT_SCOPED_TOKEN = {
u'token': { 'token': {
u'methods': [ 'methods': [
u'password' 'password'
], ],
u'catalog': [{ 'catalog': [{
u'endpoints': [{ 'endpoints': [{
u'url': 'url':
u'http://public.com:8776/v1/225da22d3ce34b15877ea70b2a575f58', 'http://public.com:8776/v1/225da22d3ce34b15877ea70b2a575f58',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': 'url':
u'http://internal:8776/v1/225da22d3ce34b15877ea70b2a575f58', 'http://internal:8776/v1/225da22d3ce34b15877ea70b2a575f58',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': 'url':
u'http://admin:8776/v1/225da22d3ce34b15877ea70b2a575f58', 'http://admin:8776/v1/225da22d3ce34b15877ea70b2a575f58',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'admin' 'interface': 'admin'
}], }],
u'type': u'volume' 'type': 'volume'
}, { }, {
u'endpoints': [{ 'endpoints': [{
u'url': u'http://public.com:9292/v1', 'url': 'http://public.com:9292/v1',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': u'http://internal:9292/v1', 'url': 'http://internal:9292/v1',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': u'http://admin:9292/v1', 'url': 'http://admin:9292/v1',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'admin' 'interface': 'admin'
}], }],
u'type': u'image' 'type': 'image'
}, { }, {
u'endpoints': [{ 'endpoints': [{
u'url': 'url':
u'http://public.com:8774/v2/225da22d3ce34b15877ea70b2a575f58', 'http://public.com:8774/v2/225da22d3ce34b15877ea70b2a575f58',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': 'url':
u'http://internal:8774/v2/225da22d3ce34b15877ea70b2a575f58', 'http://internal:8774/v2/225da22d3ce34b15877ea70b2a575f58',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': 'url':
u'http://admin:8774/v2/225da22d3ce34b15877ea70b2a575f58', 'http://admin:8774/v2/225da22d3ce34b15877ea70b2a575f58',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'admin' 'interface': 'admin'
}], }],
u'type': u'compute' 'type': 'compute'
}, { }, {
u'endpoints': [{ 'endpoints': [{
u'url': u'http://public.com:8773/services/Cloud', 'url': 'http://public.com:8773/services/Cloud',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': u'http://internal:8773/services/Cloud', 'url': 'http://internal:8773/services/Cloud',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': u'http://admin:8773/services/Admin', 'url': 'http://admin:8773/services/Admin',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'admin' 'interface': 'admin'
}], }],
u'type': u'ec2' 'type': 'ec2'
}, { }, {
u'endpoints': [{ 'endpoints': [{
u'url': u'http://public.com:5000/v3', 'url': 'http://public.com:5000/v3',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': u'http://internal:5000/v3', 'url': 'http://internal:5000/v3',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': u'http://admin:35357/v3', 'url': 'http://admin:35357/v3',
u'region': u'RegionOne', 'region': 'RegionOne',
u'interface': u'admin' 'interface': 'admin'
}], }],
u'type': u'identity' 'type': 'identity'
}], }],
u'expires_at': u'2010-11-01T03:32:15-05:00', 'expires_at': '2010-11-01T03:32:15-05:00',
u'user': { 'user': {
u'domain': { 'domain': {
u'id': u'4e6893b7ba0b4006840c3845660b86ed', 'id': '4e6893b7ba0b4006840c3845660b86ed',
u'name': u'exampledomain' 'name': 'exampledomain'
}, },
u'id': u'c4da488862bd435c9e6c0275a0d0e49a', 'id': 'c4da488862bd435c9e6c0275a0d0e49a',
u'name': u'exampleuser', 'name': 'exampleuser',
}, },
u'project': { 'project': {
u'domain': { 'domain': {
u'id': u'4e6893b7ba0b4006840c3845660b86ed', 'id': '4e6893b7ba0b4006840c3845660b86ed',
u'name': u'exampledomain' 'name': 'exampledomain'
}, },
u'id': u'225da22d3ce34b15877ea70b2a575f58', 'id': '225da22d3ce34b15877ea70b2a575f58',
u'name': u'exampleproject', 'name': 'exampleproject',
}, },
} }
} }
AUTH_RESPONSE_HEADERS = { AUTH_RESPONSE_HEADERS = {
u'X-Subject-Token': u'3e2813b7ba0b4006840c3825860b86ed' 'X-Subject-Token': '3e2813b7ba0b4006840c3825860b86ed'
} }
AUTH_RESPONSE_BODY = { AUTH_RESPONSE_BODY = {
u'token': { 'token': {
u'methods': [ 'methods': [
u'password' 'password'
], ],
u'expires_at': u'2010-11-01T03:32:15-05:00', 'expires_at': '2010-11-01T03:32:15-05:00',
u'project': { 'project': {
u'domain': { 'domain': {
u'id': u'123', 'id': '123',
u'name': u'aDomain' 'name': 'aDomain'
}, },
u'id': u'345', 'id': '345',
u'name': u'aTenant' 'name': 'aTenant'
}, },
u'user': { 'user': {
u'domain': { 'domain': {
u'id': u'1', 'id': '1',
u'name': u'aDomain' 'name': 'aDomain'
}, },
u'id': u'567', 'id': '567',
u'name': u'test' 'name': 'test'
}, },
u'issued_at': u'2010-10-31T03:32:15-05:00', 'issued_at': '2010-10-31T03:32:15-05:00',
u'catalog': [{ 'catalog': [{
u'endpoints': [{ 'endpoints': [{
u'url': u'https://compute.north.host/novapi/public', 'url': 'https://compute.north.host/novapi/public',
u'region': u'North', 'region': 'North',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': u'https://compute.north.host/novapi/internal', 'url': 'https://compute.north.host/novapi/internal',
u'region': u'North', 'region': 'North',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': u'https://compute.north.host/novapi/admin', 'url': 'https://compute.north.host/novapi/admin',
u'region': u'North', 'region': 'North',
u'interface': u'admin' 'interface': 'admin'
}], }],
u'type': u'compute' 'type': 'compute'
}, { }, {
u'endpoints': [{ 'endpoints': [{
u'url': u'http://swift.north.host/swiftapi/public', 'url': 'http://swift.north.host/swiftapi/public',
u'region': u'South', 'region': 'South',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': u'http://swift.north.host/swiftapi/internal', 'url': 'http://swift.north.host/swiftapi/internal',
u'region': u'South', 'region': 'South',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': u'http://swift.north.host/swiftapi/admin', 'url': 'http://swift.north.host/swiftapi/admin',
u'region': u'South', 'region': 'South',
u'interface': u'admin' 'interface': 'admin'
}], }],
u'type': u'object-store' 'type': 'object-store'
}, { }, {
u'endpoints': [{ 'endpoints': [{
u'url': u'http://glance.north.host/glanceapi/public', 'url': 'http://glance.north.host/glanceapi/public',
u'region': u'North', 'region': 'North',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': u'http://glance.north.host/glanceapi/internal', 'url': 'http://glance.north.host/glanceapi/internal',
u'region': u'North', 'region': 'North',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': u'http://glance.north.host/glanceapi/admin', 'url': 'http://glance.north.host/glanceapi/admin',
u'region': u'North', 'region': 'North',
u'interface': u'admin' 'interface': 'admin'
}, { }, {
u'url': u'http://glance.south.host/glanceapi/public', 'url': 'http://glance.south.host/glanceapi/public',
u'region': u'South', 'region': 'South',
u'interface': u'public' 'interface': 'public'
}, { }, {
u'url': u'http://glance.south.host/glanceapi/internal', 'url': 'http://glance.south.host/glanceapi/internal',
u'region': u'South', 'region': 'South',
u'interface': u'internal' 'interface': 'internal'
}, { }, {
u'url': u'http://glance.south.host/glanceapi/admin', 'url': 'http://glance.south.host/glanceapi/admin',
u'region': u'South', 'region': 'South',
u'interface': u'admin' 'interface': 'admin'
}], }],
u'type': u'image' 'type': 'image'
}] }]
} }
} }
TRUST_TOKEN = { TRUST_TOKEN = {
u'token': { 'token': {
u'methods': [ 'methods': [
u'password' 'password'
], ],
u'catalog': {}, 'catalog': {},
u'expires_at': u'2010-11-01T03:32:15-05:00', 'expires_at': '2010-11-01T03:32:15-05:00',
"OS-TRUST:trust": { "OS-TRUST:trust": {
"id": "fe0aef", "id": "fe0aef",
"impersonation": False, "impersonation": False,
@@ -273,13 +276,13 @@ TRUST_TOKEN = {
} }
} }
}, },
u'user': { 'user': {
u'domain': { 'domain': {
u'id': u'4e6893b7ba0b4006840c3845660b86ed', 'id': '4e6893b7ba0b4006840c3845660b86ed',
u'name': u'exampledomain' 'name': 'exampledomain'
}, },
u'id': u'0ca8f6', 'id': '0ca8f6',
u'name': u'exampleuser', 'name': 'exampleuser',
} }
} }
} }