diff options
author | Jenkins <jenkins@review.openstack.org> | 2013-01-13 22:53:04 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2013-01-13 22:53:04 +0000 |
commit | ceec5c0bd06f2960cc637882b315f102433d8cc0 (patch) | |
tree | b68db014d980abc8b393bc32596693dceb958f0b /keystone/catalog | |
parent | 26c807bf93d18704f0b3180dccd693a85c327789 (diff) | |
parent | 3a38ecfc8868c95ad3df43de22b29f08f2c9d4cf (diff) | |
download | keystone-ceec5c0bd06f2960cc637882b315f102433d8cc0.tar.gz keystone-ceec5c0bd06f2960cc637882b315f102433d8cc0.tar.xz keystone-ceec5c0bd06f2960cc637882b315f102433d8cc0.zip |
Merge "Validated URLs in v2 endpoint creation API"
Diffstat (limited to 'keystone/catalog')
-rw-r--r-- | keystone/catalog/controllers.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/keystone/catalog/controllers.py b/keystone/catalog/controllers.py index 78afffe7..8dddf469 100644 --- a/keystone/catalog/controllers.py +++ b/keystone/catalog/controllers.py @@ -81,9 +81,13 @@ class Endpoint(controller.V2Controller): """Create three v3 endpoint refs based on a legacy ref.""" self.assert_admin(context) + # according to the v2 spec publicurl is mandatory + self._require_attribute(endpoint, 'publicurl') + legacy_endpoint_ref = endpoint.copy() - urls = dict((i, endpoint.pop('%surl' % i)) for i in INTERFACES) + urls = dict((i, endpoint.pop('%surl' % i)) for i in INTERFACES + if endpoint.get('%surl' % i) is not None) legacy_endpoint_id = uuid.uuid4().hex for interface, url in urls.iteritems(): endpoint_ref = endpoint.copy() |