From 8939d26a5bb055b7b818463ce3894d85ecc532eb Mon Sep 17 00:00:00 2001 From: Doug Hellmann Date: Mon, 14 May 2012 10:50:25 -0400 Subject: fix authentication setup in interactive mode and improve error handling so tracebacks are not printed twice Change-Id: I59fb07369edad3b2f2abddba3c0d0f6bbce1eab1 --- openstackclient/shell.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'openstackclient/shell.py') diff --git a/openstackclient/shell.py b/openstackclient/shell.py index c6242220..3f20d0a9 100644 --- a/openstackclient/shell.py +++ b/openstackclient/shell.py @@ -196,9 +196,11 @@ class OpenStackShell(App): # If the user is not asking for help, make sure they # have given us auth. - cmd_info = self.command_manager.find_command(argv) - cmd_factory, cmd_name, sub_argv = cmd_info - if cmd_name != 'help': + cmd_name = None + if argv: + cmd_info = self.command_manager.find_command(argv) + cmd_factory, cmd_name, sub_argv = cmd_info + if self.interactive_mode or cmd_name != 'help': self.authenticate_user() def prepare_to_run_command(self, cmd): @@ -215,7 +217,10 @@ class OpenStackShell(App): def main(argv=sys.argv[1:]): - return OpenStackShell().run(argv) + try: + return OpenStackShell().run(argv) + except: + return 1 if __name__ == "__main__": -- cgit v1.2.1