Merge "Print adminPass when rebuilding from shell"

This commit is contained in:
Jenkins
2014-04-07 18:51:30 +00:00
committed by Gerrit Code Review
4 changed files with 25 additions and 22 deletions

View File

@@ -535,11 +535,11 @@ class FakeHTTPClient(base_client.HTTPClient):
assert list(body[action]) == ['type'] assert list(body[action]) == ['type']
assert body[action]['type'] in ['HARD', 'SOFT'] assert body[action]['type'] in ['HARD', 'SOFT']
elif action == 'rebuild': elif action == 'rebuild':
keys = list(body[action]) body = body[action]
if 'adminPass' in keys: adminPass = body.get('adminPass', 'randompassword')
keys.remove('adminPass') assert 'imageRef' in body
assert 'imageRef' in keys
_body = self.get_servers_1234()[2] _body = self.get_servers_1234()[2]
_body['server']['adminPass'] = adminPass
elif action == 'resize': elif action == 'resize':
keys = body[action].keys() keys = body[action].keys()
assert 'flavorRef' in keys assert 'flavorRef' in keys

View File

@@ -739,34 +739,37 @@ class ShellTest(utils.TestCase):
{'reboot': {'type': 'HARD'}}) {'reboot': {'type': 'HARD'}})
def test_rebuild(self): def test_rebuild(self):
self.run_command('rebuild sample-server 1') output = self.run_command('rebuild sample-server 1')
self.assert_called('GET', '/servers', pos=-8) self.assert_called('GET', '/servers', pos=-6)
self.assert_called('GET', '/servers/1234', pos=-7) self.assert_called('GET', '/servers/1234', pos=-5)
self.assert_called('GET', '/images/1', pos=-6) self.assert_called('GET', '/images/1', pos=-4)
self.assert_called('POST', '/servers/1234/action', self.assert_called('POST', '/servers/1234/action',
{'rebuild': {'imageRef': 1}}, pos=-5) {'rebuild': {'imageRef': 1}}, pos=-3)
self.assert_called('GET', '/flavors/1', pos=-2) self.assert_called('GET', '/flavors/1', pos=-2)
self.assert_called('GET', '/images/2') self.assert_called('GET', '/images/2')
self.assertIn('adminPass', output)
def test_rebuild_password(self): def test_rebuild_password(self):
self.run_command('rebuild sample-server 1 --rebuild-password asdf') output = self.run_command('rebuild sample-server 1'
self.assert_called('GET', '/servers', pos=-8) ' --rebuild-password asdf')
self.assert_called('GET', '/servers/1234', pos=-7) self.assert_called('GET', '/servers', pos=-6)
self.assert_called('GET', '/images/1', pos=-6) self.assert_called('GET', '/servers/1234', pos=-5)
self.assert_called('GET', '/images/1', pos=-4)
self.assert_called('POST', '/servers/1234/action', self.assert_called('POST', '/servers/1234/action',
{'rebuild': {'imageRef': 1, 'adminPass': 'asdf'}}, {'rebuild': {'imageRef': 1, 'adminPass': 'asdf'}},
pos=-5) pos=-3)
self.assert_called('GET', '/flavors/1', pos=-2) self.assert_called('GET', '/flavors/1', pos=-2)
self.assert_called('GET', '/images/2') self.assert_called('GET', '/images/2')
self.assertIn('adminPass', output)
def test_rebuild_preserve_ephemeral(self): def test_rebuild_preserve_ephemeral(self):
self.run_command('rebuild sample-server 1 --preserve-ephemeral') self.run_command('rebuild sample-server 1 --preserve-ephemeral')
self.assert_called('GET', '/servers', pos=-8) self.assert_called('GET', '/servers', pos=-6)
self.assert_called('GET', '/servers/1234', pos=-7) self.assert_called('GET', '/servers/1234', pos=-5)
self.assert_called('GET', '/images/1', pos=-6) self.assert_called('GET', '/images/1', pos=-4)
self.assert_called('POST', '/servers/1234/action', self.assert_called('POST', '/servers/1234/action',
{'rebuild': {'imageRef': 1, {'rebuild': {'imageRef': 1,
'preserve_ephemeral': True}}, pos=-5) 'preserve_ephemeral': True}}, pos=-3)
self.assert_called('GET', '/flavors/1', pos=-2) self.assert_called('GET', '/flavors/1', pos=-2)
self.assert_called('GET', '/images/2') self.assert_called('GET', '/images/2')

View File

@@ -1210,8 +1210,8 @@ def do_rebuild(cs, args):
kwargs = utils.get_resource_manager_extra_kwargs(do_rebuild, args) kwargs = utils.get_resource_manager_extra_kwargs(do_rebuild, args)
kwargs['preserve_ephemeral'] = args.preserve_ephemeral kwargs['preserve_ephemeral'] = args.preserve_ephemeral
server.rebuild(image, _password, **kwargs) server = server.rebuild(image, _password, **kwargs)
_print_server(cs, args) _print_server(cs, args, server)
if args.poll: if args.poll:
_poll_for_status(cs.servers.get, server.id, 'rebuilding', ['active']) _poll_for_status(cs.servers.get, server.id, 'rebuilding', ['active'])

View File

@@ -1055,8 +1055,8 @@ def do_rebuild(cs, args):
_password = None _password = None
kwargs = utils.get_resource_manager_extra_kwargs(do_rebuild, args) kwargs = utils.get_resource_manager_extra_kwargs(do_rebuild, args)
server.rebuild(image, _password, **kwargs) server = server.rebuild(image, _password, **kwargs)
_print_server(cs, args) _print_server(cs, args, server)
if args.poll: if args.poll:
_poll_for_status(cs.servers.get, server.id, 'rebuilding', ['active']) _poll_for_status(cs.servers.get, server.id, 'rebuilding', ['active'])