Merge "Allow server name to be specified for actions and diagnostics."

This commit is contained in:
Jenkins
2012-05-03 18:44:39 +00:00
committed by Gerrit Code Review
3 changed files with 17 additions and 3 deletions

View File

@@ -676,14 +676,16 @@ def do_unrescue(cs, args):
@utils.arg('server', metavar='<server>', help='Name or ID of server.')
def do_diagnostics(cs, args):
"""Retrieve server diagnostics."""
utils.print_dict(cs.servers.diagnostics(args.server)[1])
server = _find_server(cs, args.server)
utils.print_dict(cs.servers.diagnostics(server)[1])
@utils.arg('server', metavar='<server>', help='Name or ID of server.')
def do_actions(cs, args):
"""Retrieve server actions."""
server = _find_server(cs, args.server)
utils.print_list(
cs.servers.actions(args.server),
cs.servers.actions(server),
["Created_At", "Action", "Error"])

View File

@@ -242,7 +242,7 @@ class FakeHTTPClient(base_client.HTTPClient):
return (204, {'metadata': {'test_key': 'test_value'}})
def get_servers_1234_diagnostics(self, **kw):
return (200, 'Fake diagnostics')
return (200, {'data': 'Fake diagnostics'})
def get_servers_1234_actions(self, **kw):
return (200, {'actions': [

View File

@@ -236,6 +236,18 @@ class ShellTest(utils.TestCase):
self.run_command('delete sample-server')
self.assert_called('DELETE', '/servers/1234')
def test_diagnostics(self):
self.run_command('diagnostics 1234')
self.assert_called('GET', '/servers/1234/diagnostics')
self.run_command('diagnostics sample-server')
self.assert_called('GET', '/servers/1234/diagnostics')
def test_actions(self):
self.run_command('actions 1234')
self.assert_called('GET', '/servers/1234/actions')
self.run_command('actions sample-server')
self.assert_called('GET', '/servers/1234/actions')
def test_set_meta_set(self):
self.run_command('meta 1234 set key1=val1 key2=val2')
self.assert_called('POST', '/servers/1234/metadata',