commit 37d223ecdb392f3b46079418a7b82398afca2128
Author: Adam Gandelman <email address hidden>
Date: Thu Feb 23 13:16:00 2012 -0800
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
Reviewed: https:/ /review. openstack. org/4464 github. com/openstack/ keystone/ commit/ 37d223ecdb392f3 b46079418a7b823 98afca2128
Committed: http://
Submitter: Jenkins
Branch: master
commit 37d223ecdb392f3 b46079418a7b823 98afca2128
Author: Adam Gandelman <email address hidden>
Date: Thu Feb 23 13:16:00 2012 -0800
Implement a Catalog SQL backend
This adds a catalog SQL backend. Makes use of 3 tables: endpoint, endpoint_ association. Services and endpoints are catalog/ backends/ sql.py and are imported during the initial
service and service_
joined via the association table. New sqlalchemy models have been defined
in keystone/
migration (v001).
Configuring the service catalog is possible with changes to keystoneclient. I will be proposing a merge for that and I'll
python-
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 ServiceEndpoint Association table/model
in favor of a FK, endpoint.service_id -> service.id
Resolves bug 928053
Change-Id: Icc11889920744c 36255f06356744c b247d79f4aa