From c27267ae9cf38616d03bd2bfba81c4357c52a342 Mon Sep 17 00:00:00 2001 From: Chris Yeoh Date: Mon, 17 Jun 2013 11:32:10 +0930 Subject: Port server_diagnostics extension to v3 API Part2 Ports the server_diagnostics extensions and the corresponding unittests to the v3 framework. Partially implements blueprint nova-v3-api Change-Id: I2ddf626a539d47884e845d73ec67e9f9169dcb2b --- .../compute/plugins/v3/server_diagnostics.py | 24 +++++++++++++--------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'nova/api') diff --git a/nova/api/openstack/compute/plugins/v3/server_diagnostics.py b/nova/api/openstack/compute/plugins/v3/server_diagnostics.py index 7711eb653..6a19732dc 100644 --- a/nova/api/openstack/compute/plugins/v3/server_diagnostics.py +++ b/nova/api/openstack/compute/plugins/v3/server_diagnostics.py @@ -22,7 +22,8 @@ from nova import compute from nova import exception -authorize = extensions.extension_authorizer('compute', 'server_diagnostics') +ALIAS = "os-server-diagnostics" +authorize = extensions.extension_authorizer('compute', 'v3:' + ALIAS) sd_nsmap = {None: wsgi.XMLNS_V11} @@ -49,19 +50,22 @@ class ServerDiagnosticsController(object): return compute_api.get_diagnostics(context, instance) -class Server_diagnostics(extensions.ExtensionDescriptor): +class ServerDiagnostics(extensions.V3APIExtensionBase): """Allow Admins to view server diagnostics through server action.""" name = "ServerDiagnostics" - alias = "os-server-diagnostics" + alias = ALIAS namespace = ("http://docs.openstack.org/compute/ext/" - "server-diagnostics/api/v1.1") - updated = "2011-12-21T00:00:00+00:00" + "server-diagnostics/api/v3") + version = 1 def get_resources(self): parent_def = {'member_name': 'server', 'collection_name': 'servers'} - #NOTE(bcwaldon): This should be prefixed with 'os-' - ext = extensions.ResourceExtension('diagnostics', - ServerDiagnosticsController(), - parent=parent_def) - return [ext] + resources = [ + extensions.ResourceExtension(ALIAS, + ServerDiagnosticsController(), + parent=parent_def)] + return resources + + def get_controller_extensions(self): + return [] -- cgit