The existing discovery mechanism is geared around allowing users to create appropriate client objects. It does not provide any means to query version responses to determine the URLs of available versions. This patch adds url_for (similar to the functions available on service catalog) and data_for functions that can do lower level queries for URLs and version response data. Because of the client creation functionality the existing discover.py cannot be imported from within keystoneclient due to cyclical dependency resolution. The querying functions are therefore added to a private keystoneclient file and exposed to the original Discover object via inheritance. This private object can then be used within the keystoneclient library. Blueprint: endpoint-version-query Change-Id: I7e1891536289c57ad3fbe8ef1c6e50b7344d83d5
11 KiB
11 KiB