diff --git a/glanceclient/shell.py b/glanceclient/shell.py index d8998f04..db8d3dd6 100755 --- a/glanceclient/shell.py +++ b/glanceclient/shell.py @@ -535,6 +535,7 @@ class OpenStackImagesShell(object): # Handle top-level --help/-h before attempting to parse # a command off the command line if options.help or not argv: + parser = _get_subparser(api_version) self.do_help(options, parser=parser) return 0 diff --git a/glanceclient/tests/unit/test_shell.py b/glanceclient/tests/unit/test_shell.py index 3a636394..3f6b0959 100644 --- a/glanceclient/tests/unit/test_shell.py +++ b/glanceclient/tests/unit/test_shell.py @@ -538,9 +538,14 @@ class ShellTest(testutils.TestCase): except SystemExit: self.fail('Unexpected SystemExit') - # We expect the normal usage as a result - self.assertIn('Command-line interface to the OpenStack Images API', - sys.stdout.getvalue()) + # We expect the normal v2 usage as a result + expected = ['Command-line interface to the OpenStack Images API', + 'image-list', + 'image-deactivate', + 'location-add'] + for output in expected: + self.assertIn(output, + sys.stdout.getvalue()) @mock.patch('glanceclient.v2.client.Client') @mock.patch('glanceclient.v1.shell.do_image_list')