Merge "Add keystone version to REST API"

This commit is contained in:
Jenkins 2015-07-15 21:07:35 +00:00 committed by Gerrit Code Review
commit 96b65f923a
5 changed files with 43 additions and 0 deletions

View File

@ -739,3 +739,7 @@ def keystone_backend_name():
return settings.OPENSTACK_KEYSTONE_BACKEND['name']
else:
return 'unknown'
def get_version():
return VERSIONS.active

View File

@ -23,6 +23,19 @@ from openstack_dashboard.api.rest import utils as rest_utils
from openstack_dashboard.api.rest import urls
@urls.register
class Version(generic.View):
"""API for active keystone version.
"""
url_regex = r'keystone/version/$'
@rest_utils.ajax()
def get(self, request):
"""Get active keystone version.
"""
return {'version': api.keystone.get_version()}
@urls.register
class Users(generic.View):
"""API for keystone users.

View File

@ -24,6 +24,14 @@ limitations under the License.
'horizon.framework.widgets.toast.service'];
function KeystoneAPI(apiService, toastService) {
// Version
this.getVersion = function() {
return apiService.get('/api/keystone/version/')
.error(function () {
toastService.add('error', gettext('Unable to get the Keystone service version.'));
});
};
// Users
this.getUsers = function(params) {
var config = (params) ? {'params': params} : {};

View File

@ -37,6 +37,12 @@
});
var tests = [
{
"func": "getVersion",
"method": "get",
"path": "/api/keystone/version/",
"error": "Unable to get the Keystone service version."
},
{
"func": "getUsers",
"method": "get",

View File

@ -22,6 +22,18 @@ from openstack_dashboard.test import helpers as test
class KeystoneRestTestCase(test.TestCase):
#
# Version
#
@mock.patch.object(keystone.api, 'keystone')
def test_version_get(self, kc):
request = self.mock_rest_request()
kc.get_version.return_value = '2.0'
response = keystone.Version().get(request)
self.assertStatusCode(response, 200)
self.assertEqual(response.content, '{"version": "2.0"}')
kc.get_version.assert_called_once_with()
#
# Users
#