)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"9e1819a6e6d745009970eaffaff502c34b03aae2","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Jay Lau \u003cliugya@cn.ibm.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-12-07 08:22:53 -0500"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP: Enable \"heat stack-delete\" can delete multiple stacks"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Now \"heat stack-delete\" can only delete on stack in one request,"},{"line_number":10,"context_line":"this patch enhanced this command can delete multiple stacks in"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F9r3U%3D","line":7,"updated":"2013-12-07 20:36:52.000000000","message":"Reword to smth like \"Enable deleting multiple stacks with single call.\"","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"bd67ad995437e77c9d7535cbf4754f70e87cdf04","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Jay Lau \u003cliugya@cn.ibm.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-12-07 08:22:53 -0500"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP: Enable \"heat stack-delete\" can delete multiple stacks"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Now \"heat stack-delete\" can only delete on stack in one request,"},{"line_number":10,"context_line":"this patch enhanced this command can delete multiple stacks in"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F9Vyo%3D","line":7,"in_reply_to":"AAAATn%2F9r3U%3D","updated":"2013-12-12 14:09:55.000000000","message":"Done","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"9e1819a6e6d745009970eaffaff502c34b03aae2","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP: Enable \"heat stack-delete\" can delete multiple stacks"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Now \"heat stack-delete\" can only delete on stack in one request,"},{"line_number":10,"context_line":"this patch enhanced this command can delete multiple stacks in"},{"line_number":11,"context_line":"one request."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F9r3I%3D","line":9,"updated":"2013-12-07 20:36:52.000000000","message":"Typo here, should be \"one stack\"","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"bd67ad995437e77c9d7535cbf4754f70e87cdf04","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP: Enable \"heat stack-delete\" can delete multiple stacks"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Now \"heat stack-delete\" can only delete on stack in one request,"},{"line_number":10,"context_line":"this patch enhanced this command can delete multiple stacks in"},{"line_number":11,"context_line":"one request."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F9Vyk%3D","line":9,"in_reply_to":"AAAATn%2F9r3I%3D","updated":"2013-12-12 14:09:55.000000000","message":"Done","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"9e1819a6e6d745009970eaffaff502c34b03aae2","unresolved":false,"context_lines":[{"line_number":7,"context_line":"WIP: Enable \"heat stack-delete\" can delete multiple stacks"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Now \"heat stack-delete\" can only delete on stack in one request,"},{"line_number":10,"context_line":"this patch enhanced this command can delete multiple stacks in"},{"line_number":11,"context_line":"one request."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Id48bfdbbcd565435725c8a4adf1196dcbb93f9df"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F9r3A%3D","line":10,"updated":"2013-12-07 20:36:52.000000000","message":"\"this patch enhances this command to allow deletion of multiple stacks with single call.\"\u0027","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"bd67ad995437e77c9d7535cbf4754f70e87cdf04","unresolved":false,"context_lines":[{"line_number":7,"context_line":"WIP: Enable \"heat stack-delete\" can delete multiple stacks"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Now \"heat stack-delete\" can only delete on stack in one request,"},{"line_number":10,"context_line":"this patch enhanced this command can delete multiple stacks in"},{"line_number":11,"context_line":"one request."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Id48bfdbbcd565435725c8a4adf1196dcbb93f9df"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F9Vyg%3D","line":10,"in_reply_to":"AAAATn%2F9r3A%3D","updated":"2013-12-12 14:09:55.000000000","message":"Done","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"}],"heatclient/v1/shell.py":[{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"9e1819a6e6d745009970eaffaff502c34b03aae2","unresolved":false,"context_lines":[{"line_number":179,"context_line":"        try:"},{"line_number":180,"context_line":"            hc.stacks.delete(**fields)"},{"line_number":181,"context_line":"        except exc.HTTPNotFound:"},{"line_number":182,"context_line":"            raise exc.CommandError(\u0027Stack not found: %s\u0027 % sid)"},{"line_number":183,"context_line":"        else:"},{"line_number":184,"context_line":"            do_stack_list(hc)"},{"line_number":185,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F9r2s%3D","line":182,"updated":"2013-12-07 20:36:52.000000000","message":"This will fail to delete those stacks that were after the one that failed in the list of arguments. I think it is wrong behaviour, as we should either try to delete every stack or ensure deletion/not deletion of all stacks together (I\u0027m not sure which is more appropriate here, we need to discuss this).","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"bd67ad995437e77c9d7535cbf4754f70e87cdf04","unresolved":false,"context_lines":[{"line_number":179,"context_line":"        try:"},{"line_number":180,"context_line":"            hc.stacks.delete(**fields)"},{"line_number":181,"context_line":"        except exc.HTTPNotFound:"},{"line_number":182,"context_line":"            raise exc.CommandError(\u0027Stack not found: %s\u0027 % sid)"},{"line_number":183,"context_line":"        else:"},{"line_number":184,"context_line":"            do_stack_list(hc)"},{"line_number":185,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F9Vy8%3D","line":182,"in_reply_to":"AAAATn%2F9r2s%3D","updated":"2013-12-12 14:09:55.000000000","message":"OK, I will follow nova logic for this.\n\nhttps://github.com/openstack/python-novaclient/blob/master/novaclient/v1_1/shell.py#L1515","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"9e1819a6e6d745009970eaffaff502c34b03aae2","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        except exc.HTTPNotFound:"},{"line_number":182,"context_line":"            raise exc.CommandError(\u0027Stack not found: %s\u0027 % sid)"},{"line_number":183,"context_line":"        else:"},{"line_number":184,"context_line":"            do_stack_list(hc)"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"@utils.arg(\u0027id\u0027, metavar\u003d\u0027\u003cNAME or ID\u003e\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F9r3s%3D","line":184,"updated":"2013-12-07 20:36:52.000000000","message":"This will call do_stack_list multiple times. Better IMO move it out of cycle and call it once for single call of this function.","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"bd67ad995437e77c9d7535cbf4754f70e87cdf04","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        except exc.HTTPNotFound:"},{"line_number":182,"context_line":"            raise exc.CommandError(\u0027Stack not found: %s\u0027 % sid)"},{"line_number":183,"context_line":"        else:"},{"line_number":184,"context_line":"            do_stack_list(hc)"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"@utils.arg(\u0027id\u0027, metavar\u003d\u0027\u003cNAME or ID\u003e\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F9Vyw%3D","line":184,"in_reply_to":"AAAATn%2F9r3s%3D","updated":"2013-12-12 14:09:55.000000000","message":"Done","commit_id":"befe50de8124b9a714d4d3af1f30c313565ec957"},{"author":{"_account_id":6698,"name":"Robert Pothier","email":"robpothier35@gmail.com","username":"rpothier"},"change_message_id":"32462f5ddb37effe39d1879e02f67e2571d4f0a8","unresolved":false,"context_lines":[{"line_number":184,"context_line":"            failure_count +\u003d 1"},{"line_number":185,"context_line":"            print(e)"},{"line_number":186,"context_line":"    if failure_count \u003d\u003d len(args.id):"},{"line_number":187,"context_line":"        raise exceptions.CommandError(\"Unable to delete any of the specified \""},{"line_number":188,"context_line":"                                      \"stacks.\")"},{"line_number":189,"context_line":"    do_stack_list(hc)"},{"line_number":190,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F9U6U%3D","line":187,"updated":"2013-12-12 16:27:40.000000000","message":"why is exc changed to exceptions? all other code uses raise exc.CommandError","commit_id":"eee30ed9927cea29c26732b767b0b556624afed9"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"5af2d6a144d14d4cace6cc11f66443370c1bfc70","unresolved":false,"context_lines":[{"line_number":184,"context_line":"            failure_count +\u003d 1"},{"line_number":185,"context_line":"            print(e)"},{"line_number":186,"context_line":"    if failure_count \u003d\u003d len(args.id):"},{"line_number":187,"context_line":"        raise exceptions.CommandError(\"Unable to delete any of the specified \""},{"line_number":188,"context_line":"                                      \"stacks.\")"},{"line_number":189,"context_line":"    do_stack_list(hc)"},{"line_number":190,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F9S%2Bk%3D","line":187,"in_reply_to":"AAAATn%2F9U6U%3D","updated":"2013-12-12 22:28:21.000000000","message":"Done","commit_id":"eee30ed9927cea29c26732b767b0b556624afed9"}]}
