summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwhoami-rajat <rajatdhasmana@gmail.com>2019-12-05 05:18:38 +0000
committerwhoami-rajat <rajatdhasmana@gmail.com>2019-12-05 05:24:14 +0000
commitceddb3cfd033661f63d1245a45e0e197561be19c (patch)
treeea37ebda8c6d904764ba7b6f10b59bdfd272f020
parent0462563263844d5fc768d66c702951f8406797da (diff)
downloadpython-cinderclient-ceddb3cfd033661f63d1245a45e0e197561be19c.tar.gz
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
-rw-r--r--cinderclient/tests/unit/v3/test_shell.py1
-rw-r--r--cinderclient/v3/shell.py2
2 files changed, 2 insertions, 1 deletions
diff --git a/cinderclient/tests/unit/v3/test_shell.py b/cinderclient/tests/unit/v3/test_shell.py
index ee35ddf..f76a484 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 fa1cc9c..fcb9e4a 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)