From 8fa0882354c589b17d4502e04344ae00b75369d5 Mon Sep 17 00:00:00 2001 From: whoami-rajat Date: Thu, 5 Dec 2019 05:18:38 +0000 Subject: [PATCH] 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 --poll shows 'bootable' flag as false whereas, cinder show shows 'bootable' as true Change-Id: I1502e88f1cd84d225b75c07313e4eb252cc2d645 Closes-Bug: #1855224 (cherry picked from commit ceddb3cfd033661f63d1245a45e0e197561be19c) --- cinderclient/tests/unit/v3/test_shell.py | 1 - cinderclient/v3/shell.py | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/cinderclient/tests/unit/v3/test_shell.py b/cinderclient/tests/unit/v3/test_shell.py index ee35ddfd9..f76a4847e 100644 --- a/cinderclient/tests/unit/v3/test_shell.py +++ b/cinderclient/tests/unit/v3/test_shell.py @@ -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, diff --git a/cinderclient/v3/shell.py b/cinderclient/v3/shell.py index fa1cc9c0f..fcb9e4a04 100644 --- a/cinderclient/v3/shell.py +++ b/cinderclient/v3/shell.py @@ -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)