summaryrefslogtreecommitdiffstats
path: root/keystone/catalog
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Sync models with migrations"Jenkins2013-08-121-3/+3
|\
| * Sync models with migrationsElena Ezhova2013-08-121-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch syncs models with migrations for: -Endpoint -CredentialModel -TokenModel -TrustModel No actual schema change is taking place, this patch just corrects errors in the model definitions. Made class Index avaliable in keystone.common.sql.core partially implements bp db-sync-models-with-migrations Change-Id: I52f5c455360b65a2d5d884bbbec078dca6d34451
* | Fix select n+1 issue in keystone catalogRoman Verchikov2013-08-071-40/+31
|/ | | | | | | | | | | | | keystone.catalog.backends.sql.get_catalog() and get_v3_catalog() methods generate N+1 select statements for each endpoint. Use sqlalchemy's eager load to generate single select statement instead of generating N+1 select statents for each endpoint. Given change does not modify DB schema and is runtime-only, since it's a one-to-many relationship. Change-Id: Ia72b8603fc13f01696771f6116b320364bd50f51 Fixes: bug #1206725
* Stop passing context to managers (bug 1194938)Dolph Mathews2013-06-282-27/+26
| | | | | | | We don't have a use case for passing the request context to the manager layer, so this patch removes a bunch of cruft. Change-Id: Ic6435782c4c9f32e38c7800172645cc1af23ea09
* Merge "Add <version> arg to keystone-manage db_sync"Jenkins2013-05-301-2/+2
|\
| * Add <version> arg to keystone-manage db_syncBrian Waldon2013-05-281-2/+2
| | | | | | | | | | | | | | This optional <version> argument allows a client of db_sync to indicate to which database version to upgrade or downgrade. Change-Id: I3ccf45eb572a3897e5d3bc5bd17566493a55f393
* | Cleanup docstrings (flake8 H401, H402, H403, H404)Dolph Mathews2013-05-241-1/+1
|/ | | | | | | | | - docstring should not start with a space (flake8 H401) - one line docstring needs punctuation (flake8 H402) - multi line docstring end on new line (flake8 H403) - multi line docstring should start with a summary (flake8 H404) Change-Id: I69b414395930bda739aa01b785ac619fa8bb7d9b
* Satisfy flake8 import rules F401 and F403Dolph Mathews2013-05-231-0/+1
| | | | | | | | - Removed unused imports - Ignore wildcard and unused imports from core modules (and avoid wildcard imports otherwise) to __init__ modules Change-Id: Ie2e5f61ae37481f5d248788cfd83dc92ffddbd91
* get SQL refs from session (bp sql-query-get)Dolph Mathews2013-05-201-5/+5
| | | | Change-Id: I2200e33868d50bb69089f3108a5a4c061afccd6e
* Utilize legacy_endpoint_id column (bug 1154918)Dolph Mathews2013-03-181-1/+3
| | | | | | | | This column was created in migration 11 but isn't used because it wasn't added to the model definition. Attempting to store data here ended up putting it into 'extra'. Change-Id: I02680b5213f09fe3cddcf5365104554d3e6d6b8a
* Discard null endpoints (bug 1152632)Dolph Mathews2013-03-151-3/+9
| | | | | | | | | | | If a v2 client passed {..., "adminurl": null, ...} in a endpoint-create request, then the null value was being persisted on an endpoint with a different interface value (i.e. a publicly facing endpoint would have an "adminurl": null value inexplicably attached to it.) This change simply pops null urls from the endpoint and discards them. Change-Id: Idd0964b6ec34fbc8b979253d32f655ea9797f259
* Merge "Filter out legacy_endpoint_id (bug 1152635)"Jenkins2013-03-131-0/+11
|\
| * Filter out legacy_endpoint_id (bug 1152635)Dolph Mathews2013-03-121-0/+11
| | | | | | | | Change-Id: I176c3f4fec0a1fa544efb11cffd4837dedf8cace
* | v3 endpoints won't have legacy ID's (bug 1150930)Dolph Mathews2013-03-081-1/+1
|/ | | | Change-Id: I8cc6bac7b0e549db7755df3a993db7d563907324
* Pass query filter attributes to policy engineHenry Nash2013-02-211-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | With the v3 api, there will be cases when a cloud provider will want to be able to protect apis by matching items in the query filter string. A classic case would be: GET /users?domain_id=mydomain The change augments the v3 controller protection wrapper with one that will also pass in filter parameters. Since this filter list also equates to the filter_by_attribute code that the subsequent api call will make, the filterprotection wrapper passes the filter list into the api call, allowing the code body to not have to re-specify the same list. This also has the consequency of fixing all the missing filter_by_attribute statements in the current code base. Some tests cannot yet be run due to dependency on completion of v3/auth Fixes Bug #1126048 Fixes Bug #1101240 Change-Id: Ibd9867f6eed585414671bbab774df95b8acdf6a5
* v3 token APIGuang Yee2013-02-202-0/+60
| | | | | | | | | | | | | | Also implemented the following: blueprint pluggable-identity-authentication-handlers blueprint stop-ids-in-uris blueprint multi-factor-authn (just the plumbing) What's missing? * domain scoping (will be implemented by Henry?) Change-Id: I191c0b2cb3367b2a5f8a2dc674c284bb13ea97e3
* Fix spelling mistakesJoe Gordon2013-02-121-1/+1
| | | | | | | git ls-files | misspellings -f - Source: https://github.com/lyda/misspell-check Change-Id: Icbd2412aa65bc8135e5dcd83ee69e94f5a42f7a2
* Relational API linksDolph Mathews2013-02-071-8/+14
| | | | | | | | | | | | | | | - Adds a self-relational link to both individual API entities and collections. - Adds null previous/next links to collections to support pagination in the future. - Temporarily disables pagination (fixes bug 1079661), as the client doesn't currently support or expect it. We probably need to return all results by default unless the client requests a limited resultset anyway. - Expands test coverage for granting roles to users & groups in projects & domains. Change-Id: Ib5d6d39f5e1eb673c3285ef0b98603c5d375de75
* Why .pop()'ing urls first is importantDolph Mathews2013-02-041-0/+2
| | | | | | | The following code review made me realize that this really needed to be commented: https://review.openstack.org/#/c/19431/ Change-Id: I70c1e640db716f6bc0a01bf8fdf8145a8ea730ac
* Merge "Validated URLs in v2 endpoint creation API"Jenkins2013-01-131-1/+5
|\
| * Validated URLs in v2 endpoint creation APITushar Patil2013-01-111-1/+5
| | | | | | | | | | | | | | | | | | | | Fixed the 500 response when endpoint is created without specifying either adminurl, publicurl or internalurl empty. Added unit test coverage for v2 endpoint create API. Fixes LP: #1097747 Change-Id: I1875859bd7e197e985a5b5395c8caefff3c83b11
* | Fixes import order nitsZhongyue Luo2013-01-111-1/+1
|/ | | | Change-Id: I5a527e0f5010171a202de5894d124d213d22a073
* Driver registryDolph Mathews2012-12-213-10/+11
| | | | | | | | | Uses automatic dependency injection to provide controllers with driver interfaces (identity_api, token_api, etc). See tests/test_injection.py for a self-contained example. Change-Id: I255087de534292fbf57a45b19f97488f831f607c
* Split endpoint records in SQL by interfaceDolph Mathews2012-12-182-32/+87
| | | | | | | | | | | | | | | | This migrates the SQL backend such that v2 endpoints containing up to 3 URL's (public, internal and admin) stored in 'extra' are split into unique endpoints. Because legacy "endpoints" (each having publicUrl, internalUrl and adminUrl) are no longer conceptually identical to v3's "endpoints" (each having an interface and a url), new ID's are assigned to each entity and each API continues to operate using with independent sets of endpoint ID's. Endpoints created on the v3 API are not exposed on the v2 API. Change-Id: I2ba59d55907313ae65e908585fc49be0c4ce899a
* module refactoringAdam Young2012-12-173-18/+28
| | | | | | | | | Distributes the functionality of service.py into the modules. Moves ComposableRouters into the modules. The routers and controllers now have short names. The controllers get their APIs via the base class. Change-Id: I87404b80ea9800d6792f97a7a3a64fe839065c1c
* Merge "Bug 1075090 -- Fixing log messages in python source code to support ↵Jenkins2012-12-052-8/+10
|\ | | | | | | internationalization."
| * Bug 1075090 -- Fixing log messages in python source code to support ↵Nachiappan VR N2012-12-042-8/+10
| | | | | | | | | | | | internationalization. Change-Id: I6b50abaa82effad8feaaac8d85086ca8b5d42590
* | Only 'import *' from 'core' modulesDolph Mathews2012-12-053-136/+155
|/ | | | | | | | - Renamed identity.controllers.* and identity.routers.* since they now occopy unique namespaces (thanks ayoung!) - Moved catalog and policy controllers into their own respective modules Change-Id: Ib9e277355e0eac15d4d218785c816b718b493b5b
* Wrap v3 API with RBAC (bug 1023943)Dolph Mathews2012-11-201-19/+10
| | | | Change-Id: Ie77be83054ea88bb0860260e1750196ac5ded650
* v3 CatalogDolph Mathews2012-11-203-47/+87
| | | | | | | - v3 catalog tests (bug 1023933) - v3 catalog implementation (bug 1023938) Change-Id: Ie118819d25afbff62327ffc8be5b5fda2ef7f4ed
* Merge "Merge remote-tracking branch 'origin/feature/keystone-v3' into HEAD"Jenkins2012-11-071-11/+126
|\
| * Merge remote-tracking branch 'origin/feature/keystone-v3' into HEADDolph Mathews2012-11-021-11/+126
| |\ | | | | | | | | | | | | | | | | | | | | | Conflicts: keystone/catalog/core.py keystone/identity/core.py Change-Id: Id47b9dd9c4da811d13454b539f78b751d40ed87d
| | * Identity API v3 Config, Routers, ControllersDolph Mathews2012-09-051-11/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | Provides configuration to deploy the v3 API identically across both: http://[...]:5000/v3/ http://[...]:35357/v3/ Change-Id: I97c5a2f7a84e3fca0adaea020697f958e04f5753
* | | Return non-indexed attrs, not 'extra' (bug 1075376)Dolph Mathews2012-11-061-32/+2
|/ / | | | | | | | | | | (most of this is pulled from the v3 branch) Change-Id: Id1118e7a2b245fb7ec95e41ec297c87036953db2
* | Enable Deletion of Services with Endpointssathish-nagappan2012-10-241-0/+1
| | | | | | | | | | | | | | | | fixes Bug #1019475 Allows the user to delete a service that has endpoints. Change-Id: If2d669e50f73ea5bb7b269f941a3b2710808a98a
* | Fix catalog when services have no URLJulien Danjou2012-10-083-8/+6
| | | | | | | | | | | | | | This fixes bug #1061736 Change-Id: Ic8f7a45dfabb2e3fb40f6aa6cd4c0f29c13f2c77 Signed-off-by: Julien Danjou <julien@danjou.info>
* | Unparseable endpoint URL's should raise friendly errorStef T2012-10-063-6/+31
| | | | | | | | | | | | fixes bug #1058494 Change-Id: Id89c530e2f4e7dcf0db03515afb8b2a85fbf8077
* | Implement token endpoint list (bug 1006777)Dolph Mathews2012-09-061-0/+1
|/ | | | Change-Id: Ia7dad06ec763994ce0beb171c481ab01c20af6cb
* Enabling SQL Catalog tests (bug 958950)Dolph Mathews2012-08-011-0/+2
| | | | Change-Id: I9d33d95ffa357b88f099a5a37aa4a139d93fd82f
* Refactor 404's into managers & drivers (bug 968519)Dolph Mathews2012-06-273-36/+75
| | | | | | | | | | | | | | | The goal is to move the responsibility of reference checks away from controllers and into the underlying managers & drivers, which can handle the task with equal or greater efficiency. - Tenant references from create_user/update_user are NOT tested due to inconsistencies between backends - Additional test coverage improvements Also fixes bug 999209, bug 999608, bug 1006029, bug 1006055, bug 1006287, bug 1006334, and bug 1006344. Change-Id: I7de592e7dd4518038436b9a9fdaab559b00a0537
* Reorder imports by full module pathZhongyue Luo2012-06-203-6/+6
| | | | | | | | Fixes bug #1013441 Sort imports by lexicographical order of full module path Change-Id: I60231d87618466426dc7bfac7bb0644a0dbd079a
* PEP8 fixesDolph Mathews2012-06-181-2/+2
| | | | Change-Id: I0989396691eb31d9008c016e64f2c197f8c7e48c
* Require authz for service CRUD (bug 1006822)Dolph Mathews2012-06-031-0/+7
| | | | Change-Id: Ia90f0aa2b856b9a9874d4865fb92ee913e8125c5
* Fixes some pep8 warning/errors.Chmouel Boudjnah2012-05-242-4/+1
| | | | | | - Using flake8 so a bit more than that. Change-Id: I63fa21f7d3d02f96c0c56804fdd56da37c952d7d
* Use ConfigOpts.find_file() to locate catalog templateMark McLoughlin2012-05-031-2/+9
| | | | | | | | | | Fixes bug #983734 Use cfg's new helper method to find the catalog template file. The basic behavior is "look alongside the config file" with a fall back to the standard default config paths. Change-Id: Ia25fefafaa2c387d0207d630e5613389be364628
* don't duplicate the extra dict in extratermie2012-03-291-2/+2
| | | | | | fixes bug 929815 Change-Id: Icfbe9a4b0eb2ef9b24bcf41113a6ec8e636210a9
* service-crud 404 (bug 963056)Dolph Mathews2012-03-271-1/+4
| | | | | | | service-delete service-get Change-Id: Ifecf4c74abf408b009a783a9d7be0e98219e0fe4
* Fix critical typo in endpoint_create (bug 961412)Dolph Mathews2012-03-211-1/+1
| | | | | | It looks like catalog crud was previously untested. Change-Id: I8e3060b6d6c737d3d97a5bd9076e9a5fdf9945e2
* Wrapped unexpected exceptions (bug 955411)Dolph Mathews2012-03-202-9/+4
| | | | | | | | | | | - Replaced all webob.exc's (outside of middleware) with keystone.exception's - Raised 409 Conflict when creating/updating existing user/tenant ID/names (bug 955464) - Raised 501 Not Implemented for user-role-add w/o tenant_id (bug 955548) Change-Id: I9f16cac502c20dd35a6b8da778e85bf3d9cfae49
* Merge "Fixes LP #954089 - Service list templated catalog"Jenkins2012-03-204-16/+18
|\