Fix: --poll inconsistency

When we use `--poll` parameter with cinder create command, it waits
for the volume to become available but doesn't update the data
displayed to the user.
Due to this, there are inconsistency between several parameters
in the output after 'poll' and 'cinder show' command.
Eg: cinder create 1 --image <image-id> --poll
shows 'bootable' flag as false
whereas, cinder show <vol-id>
shows 'bootable' as true

Change-Id: I1502e88f1cd84d225b75c07313e4eb252cc2d645
Closes-Bug: #1855224
(cherry picked from commit ceddb3cfd0)
This commit is contained in:
whoami-rajat 2019-12-05 05:18:38 +00:00 committed by Rajat Dhasmana
parent 523d09192b
commit 8fa0882354
2 changed files with 2 additions and 1 deletions

View File

@ -1165,7 +1165,6 @@ class ShellTest(utils.TestCase):
volume = self.shell.cs.volumes.get('1234')
info = dict()
info.update(volume._info)
info.pop('links', None)
self.assertEqual(1, poll_method.call_count)
timeout_period = 3600
poll_method.assert_has_calls([mock.call(self.shell.cs.volumes.get,

View File

@ -675,6 +675,8 @@ def do_create(cs, args):
shell_utils._poll_for_status(
cs.volumes.get, volume.id, info, 'creating', ['available'],
timeout_period, cs.client.global_request_id, cs.messages)
volume = cs.volumes.get(volume.id)
info.update(volume._info)
utils.print_dict(info)