)]}'
{"ironic/drivers/modules/agent_base_vendor.py":[{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"8702042f4bc8a29184fdbc65d634f6149bfe5d5b","unresolved":false,"context_lines":[{"line_number":324,"context_line":"        if last_command[\u0027command_name\u0027] !\u003d \u0027execute_clean_step\u0027:"},{"line_number":325,"context_line":"            # catches race condition where execute_clean_step is still"},{"line_number":326,"context_line":"            # processing so the command hasn\u0027t started yet"},{"line_number":327,"context_line":"            LOG.debug(\u0027Expected agent last command to be \"execute_clean_step\"\u0027"},{"line_number":328,"context_line":"                      \u0027for node %(node)s, instead got \"%(command)s\". Waiting\u0027"},{"line_number":329,"context_line":"                      \u0027for next heartbeat.\u0027,"},{"line_number":330,"context_line":"                      {\u0027node\u0027: task.node.uuid,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3afb71cf_dab4aa83","line":327,"updated":"2015-06-11 18:17:01.000000000","message":"Need trailing space or leading space on next line.","commit_id":"a95ac82ebc44ab27ccf0451d13e297896b49768f"},{"author":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"change_message_id":"3736c540ed8bb784793da2f32f5ae29cdbddb66a","unresolved":false,"context_lines":[{"line_number":324,"context_line":"        if last_command[\u0027command_name\u0027] !\u003d \u0027execute_clean_step\u0027:"},{"line_number":325,"context_line":"            # catches race condition where execute_clean_step is still"},{"line_number":326,"context_line":"            # processing so the command hasn\u0027t started yet"},{"line_number":327,"context_line":"            LOG.debug(\u0027Expected agent last command to be \"execute_clean_step\"\u0027"},{"line_number":328,"context_line":"                      \u0027for node %(node)s, instead got \"%(command)s\". Waiting\u0027"},{"line_number":329,"context_line":"                      \u0027for next heartbeat.\u0027,"},{"line_number":330,"context_line":"                      {\u0027node\u0027: task.node.uuid,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3afb71cf_309bdd74","line":327,"in_reply_to":"3afb71cf_dab4aa83","updated":"2015-06-11 18:53:12.000000000","message":"Done","commit_id":"a95ac82ebc44ab27ccf0451d13e297896b49768f"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"8702042f4bc8a29184fdbc65d634f6149bfe5d5b","unresolved":false,"context_lines":[{"line_number":325,"context_line":"            # catches race condition where execute_clean_step is still"},{"line_number":326,"context_line":"            # processing so the command hasn\u0027t started yet"},{"line_number":327,"context_line":"            LOG.debug(\u0027Expected agent last command to be \"execute_clean_step\"\u0027"},{"line_number":328,"context_line":"                      \u0027for node %(node)s, instead got \"%(command)s\". Waiting\u0027"},{"line_number":329,"context_line":"                      \u0027for next heartbeat.\u0027,"},{"line_number":330,"context_line":"                      {\u0027node\u0027: task.node.uuid,"},{"line_number":331,"context_line":"                       \u0027command\u0027: last_command[\u0027command_name\u0027]})"}],"source_content_type":"text/x-python","patch_set":1,"id":"3afb71cf_7aac9635","line":328,"updated":"2015-06-11 18:17:01.000000000","message":"Need trailing space or leading space on next line.","commit_id":"a95ac82ebc44ab27ccf0451d13e297896b49768f"},{"author":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"change_message_id":"3736c540ed8bb784793da2f32f5ae29cdbddb66a","unresolved":false,"context_lines":[{"line_number":325,"context_line":"            # catches race condition where execute_clean_step is still"},{"line_number":326,"context_line":"            # processing so the command hasn\u0027t started yet"},{"line_number":327,"context_line":"            LOG.debug(\u0027Expected agent last command to be \"execute_clean_step\"\u0027"},{"line_number":328,"context_line":"                      \u0027for node %(node)s, instead got \"%(command)s\". Waiting\u0027"},{"line_number":329,"context_line":"                      \u0027for next heartbeat.\u0027,"},{"line_number":330,"context_line":"                      {\u0027node\u0027: task.node.uuid,"},{"line_number":331,"context_line":"                       \u0027command\u0027: last_command[\u0027command_name\u0027]})"}],"source_content_type":"text/x-python","patch_set":1,"id":"3afb71cf_f08b051d","line":328,"in_reply_to":"3afb71cf_7aac9635","updated":"2015-06-11 18:53:12.000000000","message":"Done","commit_id":"a95ac82ebc44ab27ccf0451d13e297896b49768f"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"1aa111e345685b01835701cb4a161d642edee9a8","unresolved":false,"context_lines":[{"line_number":335,"context_line":"        last_step \u003d last_result.get(\u0027clean_step\u0027)"},{"line_number":336,"context_line":"        if last_command[\u0027command_status\u0027] \u003d\u003d \u0027RUNNING\u0027:"},{"line_number":337,"context_line":"            LOG.debug(\u0027Clean step: %(step)s still running for node %(node)s\u0027,"},{"line_number":338,"context_line":"                      {\u0027step\u0027: last_step, \u0027node\u0027: task.node.uuid})"},{"line_number":339,"context_line":"            return"},{"line_number":340,"context_line":"        elif (last_command[\u0027command_status\u0027] \u003d\u003d \u0027SUCCEEDED\u0027 and"},{"line_number":341,"context_line":"              last_step !\u003d task.node.clean_step):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3afb71cf_7f692825","line":338,"updated":"2015-06-11 17:52:02.000000000","message":"last_step is a dict here, right? Do we want to log the entire thing or just the interface/name?\n\nIf we are logging the entire dict, let\u0027s put it at the end since it\u0027s variable-length.","commit_id":"a95ac82ebc44ab27ccf0451d13e297896b49768f"},{"author":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"change_message_id":"3736c540ed8bb784793da2f32f5ae29cdbddb66a","unresolved":false,"context_lines":[{"line_number":335,"context_line":"        last_step \u003d last_result.get(\u0027clean_step\u0027)"},{"line_number":336,"context_line":"        if last_command[\u0027command_status\u0027] \u003d\u003d \u0027RUNNING\u0027:"},{"line_number":337,"context_line":"            LOG.debug(\u0027Clean step: %(step)s still running for node %(node)s\u0027,"},{"line_number":338,"context_line":"                      {\u0027step\u0027: last_step, \u0027node\u0027: task.node.uuid})"},{"line_number":339,"context_line":"            return"},{"line_number":340,"context_line":"        elif (last_command[\u0027command_status\u0027] \u003d\u003d \u0027SUCCEEDED\u0027 and"},{"line_number":341,"context_line":"              last_step !\u003d task.node.clean_step):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3afb71cf_70915552","line":338,"in_reply_to":"3afb71cf_7f692825","updated":"2015-06-11 18:53:12.000000000","message":"I think the whole dict is the better option. Things like cleaning reboot can be in there and may be useful. I\u0027ll move it.","commit_id":"a95ac82ebc44ab27ccf0451d13e297896b49768f"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"1aa111e345685b01835701cb4a161d642edee9a8","unresolved":false,"context_lines":[{"line_number":342,"context_line":"            # A previous clean_step was running, the new command has not yet"},{"line_number":343,"context_line":"            # started."},{"line_number":344,"context_line":"            LOG.debug(\u0027Clean step: %(step)s not yet started for node %(node)s\u0027,"},{"line_number":345,"context_line":"                      {\u0027step\u0027: last_step, \u0027node\u0027: task.node.uuid})"},{"line_number":346,"context_line":"            return"},{"line_number":347,"context_line":"        else:"},{"line_number":348,"context_line":"            return last_command"}],"source_content_type":"text/x-python","patch_set":1,"id":"3afb71cf_3f73b017","line":345,"updated":"2015-06-11 17:52:02.000000000","message":"Ditto","commit_id":"a95ac82ebc44ab27ccf0451d13e297896b49768f"},{"author":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"change_message_id":"3736c540ed8bb784793da2f32f5ae29cdbddb66a","unresolved":false,"context_lines":[{"line_number":342,"context_line":"            # A previous clean_step was running, the new command has not yet"},{"line_number":343,"context_line":"            # started."},{"line_number":344,"context_line":"            LOG.debug(\u0027Clean step: %(step)s not yet started for node %(node)s\u0027,"},{"line_number":345,"context_line":"                      {\u0027step\u0027: last_step, \u0027node\u0027: task.node.uuid})"},{"line_number":346,"context_line":"            return"},{"line_number":347,"context_line":"        else:"},{"line_number":348,"context_line":"            return last_command"}],"source_content_type":"text/x-python","patch_set":1,"id":"3afb71cf_d08009fa","line":345,"in_reply_to":"3afb71cf_3f73b017","updated":"2015-06-11 18:53:12.000000000","message":"Done","commit_id":"a95ac82ebc44ab27ccf0451d13e297896b49768f"}]}
