)]}'
{"keystoneclient/shell.py":[{"author":{"_account_id":13079,"name":"Abhishek Asthana","email":"asthana.abhishek@tcs.com","username":"abhiasth"},"change_message_id":"2537c6660f5daa723c6cedae816c3170439788ff","unresolved":false,"context_lines":[{"line_number":459,"context_line":"def main():"},{"line_number":460,"context_line":"    try:"},{"line_number":461,"context_line":"        OpenStackIdentityShell().main(sys.argv[1:])"},{"line_number":462,"context_line":"    except KeyboardInterrupt:"},{"line_number":463,"context_line":"        print(\"... terminating keystone client\", file\u003dsys.stderr)"},{"line_number":464,"context_line":"        sys.exit(130)"},{"line_number":465,"context_line":"    except Exception as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa98f980_327ed76a","line":462,"updated":"2014-09-15 03:52:19.000000000","message":"Should not we have consistency in exit value and exit message, like quoting from novaclient\n\n    except KeyboardInterrupt as e:\n        print(\"Shutting down novaclient\", file\u003dsys.stderr)\n        sys.exit(1)\n\nAlso, this should be generically applied to other clients as well.","commit_id":"fc4a3d157e8c8e879057d65547f59b0bcdb14326"},{"author":{"_account_id":13079,"name":"Abhishek Asthana","email":"asthana.abhishek@tcs.com","username":"abhiasth"},"change_message_id":"c1462b7b25a813fa44607b872d8103263219a268","unresolved":false,"context_lines":[{"line_number":459,"context_line":"def main():"},{"line_number":460,"context_line":"    try:"},{"line_number":461,"context_line":"        OpenStackIdentityShell().main(sys.argv[1:])"},{"line_number":462,"context_line":"    except KeyboardInterrupt:"},{"line_number":463,"context_line":"        print(\"... terminating keystone client\", file\u003dsys.stderr)"},{"line_number":464,"context_line":"        sys.exit(130)"},{"line_number":465,"context_line":"    except Exception as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa98f980_f456f7cc","line":462,"in_reply_to":"fa98f980_05fd0b6e","updated":"2014-09-15 09:29:42.000000000","message":"Hi,\n\nYes, right. But here I mainly say that we should stay consistent with :-\n\n1- Exit code, you have used 130 (Bash Ctlr+C exit code) but other client libraries (nova) use 1\n2- Exit message, you have used custom message, but check nova client message for Ctrl+C exit\n\nI believe, consistency is important in atlest exit code, say if a automation script uses the return code from various client libraries it will fail for your case which return 130 and not 1. Hope I am making my point clear,","commit_id":"fc4a3d157e8c8e879057d65547f59b0bcdb14326"},{"author":{"_account_id":11424,"name":"Rakesh H S","email":"rakeshhs1@gmail.com","username":"rakesh"},"change_message_id":"2a8495c61fba096ff6f5f1f8b6bca6b56f4767d7","unresolved":false,"context_lines":[{"line_number":459,"context_line":"def main():"},{"line_number":460,"context_line":"    try:"},{"line_number":461,"context_line":"        OpenStackIdentityShell().main(sys.argv[1:])"},{"line_number":462,"context_line":"    except KeyboardInterrupt:"},{"line_number":463,"context_line":"        print(\"... terminating keystone client\", file\u003dsys.stderr)"},{"line_number":464,"context_line":"        sys.exit(130)"},{"line_number":465,"context_line":"    except Exception as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa98f980_05fd0b6e","line":462,"in_reply_to":"fa98f980_327ed76a","updated":"2014-09-15 06:07:16.000000000","message":"Hi Abhishek, thanks for reviewing..\nyes, I am aware of this.. if you see now, except for novaclient, other clients such as cinderclient, glanceclient, heatclient, ironicclient uses the same behavior that I have proposed for keystoneclient here..\n(neutronclient, yet to be fixed.)..","commit_id":"fc4a3d157e8c8e879057d65547f59b0bcdb14326"},{"author":{"_account_id":11424,"name":"Rakesh H S","email":"rakeshhs1@gmail.com","username":"rakesh"},"change_message_id":"34a0122ea5f08a43ddf1728a77fd7751ddcb5433","unresolved":false,"context_lines":[{"line_number":459,"context_line":"def main():"},{"line_number":460,"context_line":"    try:"},{"line_number":461,"context_line":"        OpenStackIdentityShell().main(sys.argv[1:])"},{"line_number":462,"context_line":"    except KeyboardInterrupt:"},{"line_number":463,"context_line":"        print(\"... terminating keystone client\", file\u003dsys.stderr)"},{"line_number":464,"context_line":"        sys.exit(130)"},{"line_number":465,"context_line":"    except Exception as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"da9df570_eb867612","line":462,"in_reply_to":"fa98f980_34279fcb","updated":"2014-09-25 06:16:59.000000000","message":"Hi Abhishek, thanks for reviewing the code, I have raised an bug to fix the return code in other clients. https://bugs.launchpad.net/python-glanceclient/+bug/1373231","commit_id":"fc4a3d157e8c8e879057d65547f59b0bcdb14326"},{"author":{"_account_id":11424,"name":"Rakesh H S","email":"rakeshhs1@gmail.com","username":"rakesh"},"change_message_id":"87ca4e94f058e47aebafecca1adb506a17cb770a","unresolved":false,"context_lines":[{"line_number":459,"context_line":"def main():"},{"line_number":460,"context_line":"    try:"},{"line_number":461,"context_line":"        OpenStackIdentityShell().main(sys.argv[1:])"},{"line_number":462,"context_line":"    except KeyboardInterrupt:"},{"line_number":463,"context_line":"        print(\"... terminating keystone client\", file\u003dsys.stderr)"},{"line_number":464,"context_line":"        sys.exit(130)"},{"line_number":465,"context_line":"    except Exception as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa98f980_34279fcb","line":462,"in_reply_to":"fa98f980_f456f7cc","updated":"2014-09-15 09:57:38.000000000","message":"Hi, I think I answered your concern in the previous reply, yes, I agree we need to modify in novaclient also to keep the message and exit code uniform.","commit_id":"fc4a3d157e8c8e879057d65547f59b0bcdb14326"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"773666caee947290ceab1632d7b946756997da66","unresolved":false,"context_lines":[{"line_number":461,"context_line":"        OpenStackIdentityShell().main(sys.argv[1:])"},{"line_number":462,"context_line":"    except KeyboardInterrupt:"},{"line_number":463,"context_line":"        print(\"... terminating keystone client\", file\u003dsys.stderr)"},{"line_number":464,"context_line":"        sys.exit(130)"},{"line_number":465,"context_line":"    except Exception as e:"},{"line_number":466,"context_line":"        print(strutils.safe_encode(six.text_type(e)), file\u003dsys.stderr)"},{"line_number":467,"context_line":"        sys.exit(1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a890539_c008b993","line":464,"updated":"2014-11-13 15:00:56.000000000","message":"We should have a test that asserts that a KeyboardInterrupt exception is thrown and handled properly.","commit_id":"fc4a3d157e8c8e879057d65547f59b0bcdb14326"}]}
