diff options
author | Adam Gandelman <adamg@canonical.com> | 2012-02-23 13:16:00 -0800 |
---|---|---|
committer | Adam Gandelman <adamg@canonical.com> | 2012-02-27 18:27:02 -0800 |
commit | 37d223ecdb392f3b46079418a7b82398afca2128 (patch) | |
tree | c293a73b5dea03713b55b742535798e07208085a /keystone/identity/core.py | |
parent | 63437e9dca3b969c917fb138716aa4d3e5fabafa (diff) | |
download | keystone-37d223ecdb392f3b46079418a7b82398afca2128.tar.gz keystone-37d223ecdb392f3b46079418a7b82398afca2128.tar.xz keystone-37d223ecdb392f3b46079418a7b82398afca2128.zip |
Implement a Catalog SQL backend
This adds a catalog SQL backend. Makes use of 3 tables: endpoint,
service and service_endpoint_association. Services and endpoints are
joined via the association table. New sqlalchemy models have been defined
in keystone/catalog/backends/sql.py and are imported during the initial
migration (v001).
Configuring the service catalog is possible with changes to
python-keystoneclient. I will be proposing a merge for that and I'll
update this commit msg with a link to its review. With those client
changes, admins can now create and delete endpoints that are associated
with existing services. Existing service commands on the client-side work
as expected against this new backend. This driver's get_catalog method
properly translates existing services, endpoints and relatoins into something
consumable by keystone non-admin users / clients.
Update: Some cleanup as per bcwaldon's suggestions
Update: Match functionality of existing catalog backend by returning
IDs instead of sql objects for list_services() and list_endpoints()
Update: pep8 fixes
Update (1/2): Remove legacy OS-KSADM stuff
Update (2/2): Remove ServiceEndpointAssociation table/model
in favor of a FK, endpoint.service_id -> service.id
Resolves bug 928053
Change-Id: Icc11889920744c36255f06356744cb247d79f4aa
Diffstat (limited to 'keystone/identity/core.py')
-rw-r--r-- | keystone/identity/core.py | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/keystone/identity/core.py b/keystone/identity/core.py index 0259bb09..0806b353 100644 --- a/keystone/identity/core.py +++ b/keystone/identity/core.py @@ -22,7 +22,6 @@ import urlparse import webob.exc -from keystone import catalog from keystone import config from keystone import exception from keystone import policy @@ -352,7 +351,6 @@ class TenantController(wsgi.Application): class UserController(wsgi.Application): def __init__(self): - self.catalog_api = catalog.Manager() self.identity_api = Manager() self.policy_api = policy.Manager() self.token_api = token.Manager() @@ -412,7 +410,6 @@ class UserController(wsgi.Application): class RoleController(wsgi.Application): def __init__(self): - self.catalog_api = catalog.Manager() self.identity_api = Manager() self.token_api = token.Manager() self.policy_api = policy.Manager() |