)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7a21ec5c9e8ea9e90169a4d9420f9f0a6867f24e","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Avoid calling _parse_deploy_info twice"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When clean_up a node, parsing the deploy info is called twice"},{"line_number":10,"context_line":"in row. Allow to pass a d_info struct to _get_tftp_image_info."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I6e50e58237d1b29b5234730099344ac432671b09"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"baada198_8a657ee3","line":10,"updated":"2014-08-12 17:24:29.000000000","message":"Nit if you push another change: s/struct/dict/","commit_id":"0fcbdbef4ab96b7c04ba5a224c6d20a60b14e6f6"},{"author":{"_account_id":1726,"name":"Ghe Rivero","email":"ghe.rivero@gmail.com","username":"ghe.rivero"},"change_message_id":"a0018321acfb1fdb9bf4a4490ed10f232849f10e","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Avoid calling _parse_deploy_info twice"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When clean_up a node, parsing the deploy info is called twice"},{"line_number":10,"context_line":"in row. Allow to pass a d_info struct to _get_tftp_image_info."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I6e50e58237d1b29b5234730099344ac432671b09"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"7ac7a964_7fd623c7","line":10,"in_reply_to":"baada198_8a657ee3","updated":"2014-08-13 22:59:04.000000000","message":"Done","commit_id":"0fcbdbef4ab96b7c04ba5a224c6d20a60b14e6f6"}],"ironic/drivers/modules/pxe.py":[{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"af7ae43b3be335db9a3abfc4c3cd68ea3f455533","unresolved":false,"context_lines":[{"line_number":388,"context_line":""},{"line_number":389,"context_line":"    return image_info"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":""},{"line_number":392,"context_line":"def _destroy_images(d_info, node_uuid):"},{"line_number":393,"context_line":"    \"\"\"Delete instance\u0027s image file.\"\"\""},{"line_number":394,"context_line":"    utils.unlink_without_raise(_get_image_file_path(node_uuid))"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_1ea7db51","line":391,"updated":"2014-07-22 13:55:29.000000000","message":"d_info parameter not used therefore can be removed, and we can remove _parse_deploy_info() from clean_up().","commit_id":"6f96783b1018c39750ca7647e051fb8fc7244c1f"},{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"e1005794c53eb9c822dfdc853e0c9e873b0d4052","unresolved":false,"context_lines":[{"line_number":617,"context_line":"        This method raises no exceptions because it is intended to be"},{"line_number":618,"context_line":"        invoked asynchronously as a callback from the deploy ramdisk."},{"line_number":619,"context_line":"        \"\"\""},{"line_number":620,"context_line":"        node \u003d task.node"},{"line_number":621,"context_line":"        driver_info \u003d _parse_driver_info(node)"},{"line_number":622,"context_line":""},{"line_number":623,"context_line":"        def _set_failed_state(msg):"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_391af9c6","line":620,"updated":"2014-07-22 14:06:02.000000000","message":"I see this line also can be removed.","commit_id":"6f96783b1018c39750ca7647e051fb8fc7244c1f"},{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"0232de09839a3ed2b4f587fb1fe16379f30951b1","unresolved":false,"context_lines":[{"line_number":617,"context_line":"        This method raises no exceptions because it is intended to be"},{"line_number":618,"context_line":"        invoked asynchronously as a callback from the deploy ramdisk."},{"line_number":619,"context_line":"        \"\"\""},{"line_number":620,"context_line":"        node \u003d task.node"},{"line_number":621,"context_line":"        driver_info \u003d _parse_driver_info(node)"},{"line_number":622,"context_line":""},{"line_number":623,"context_line":"        def _set_failed_state(msg):"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_d973bde6","line":620,"in_reply_to":"baada198_391af9c6","updated":"2014-07-22 14:08:11.000000000","message":"line 621, not 620. Gerrit bug.","commit_id":"6f96783b1018c39750ca7647e051fb8fc7244c1f"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7a21ec5c9e8ea9e90169a4d9420f9f0a6867f24e","unresolved":false,"context_lines":[{"line_number":578,"context_line":"        \"\"\""},{"line_number":579,"context_line":"        node \u003d task.node"},{"line_number":580,"context_line":"        d_info \u003d _parse_deploy_info(node)"},{"line_number":581,"context_line":"        pxe_info \u003d _get_tftp_image_info(node, task.context, d_info)"},{"line_number":582,"context_line":"        for label in pxe_info:"},{"line_number":583,"context_line":"            path \u003d pxe_info[label][1]"},{"line_number":584,"context_line":"            utils.unlink_without_raise(path)"}],"source_content_type":"text/x-python","patch_set":6,"id":"baada198_aa6082d0","line":581,"updated":"2014-08-12 17:24:29.000000000","message":"This should be d_info\u003dd_info, best to be explicit about keyword arguments.","commit_id":"0fcbdbef4ab96b7c04ba5a224c6d20a60b14e6f6"},{"author":{"_account_id":1726,"name":"Ghe Rivero","email":"ghe.rivero@gmail.com","username":"ghe.rivero"},"change_message_id":"a0018321acfb1fdb9bf4a4490ed10f232849f10e","unresolved":false,"context_lines":[{"line_number":578,"context_line":"        \"\"\""},{"line_number":579,"context_line":"        node \u003d task.node"},{"line_number":580,"context_line":"        d_info \u003d _parse_deploy_info(node)"},{"line_number":581,"context_line":"        pxe_info \u003d _get_tftp_image_info(node, task.context, d_info)"},{"line_number":582,"context_line":"        for label in pxe_info:"},{"line_number":583,"context_line":"            path \u003d pxe_info[label][1]"},{"line_number":584,"context_line":"            utils.unlink_without_raise(path)"}],"source_content_type":"text/x-python","patch_set":6,"id":"7ac7a964_9f53ff6b","line":581,"in_reply_to":"baada198_aa6082d0","updated":"2014-08-13 22:59:04.000000000","message":"Done","commit_id":"0fcbdbef4ab96b7c04ba5a224c6d20a60b14e6f6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"d267d0d6ed35d8ffe88b53235622e635460998e2","unresolved":false,"context_lines":[{"line_number":406,"context_line":"    - instance does not contain kernel_id or ramdisk_id"},{"line_number":407,"context_line":"    - deploy_kernel_id or deploy_ramdisk_id can not be read from"},{"line_number":408,"context_line":"      driver_info and defaults are not set"},{"line_number":409,"context_line":""},{"line_number":410,"context_line":"    \"\"\""},{"line_number":411,"context_line":"    if not d_info:"},{"line_number":412,"context_line":"        d_info \u003d _parse_deploy_info(node)"}],"source_content_type":"text/x-python","patch_set":7,"id":"7ac7a964_66810f8f","line":409,"updated":"2014-08-14 19:38:58.000000000","message":"nit (If you do another revision). Would be good to add \":param d_info: ...\"","commit_id":"b81e50c3db7901fcd47d96c08e31f71c2bf3ff18"},{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"75bc8c07fea4e6c4b9ca02636b9585a2cc790437","unresolved":false,"context_lines":[{"line_number":367,"context_line":"    return (uuid, image_path)"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":""},{"line_number":370,"context_line":"def _get_image_info(node, ctx, d_info\u003dNone):"},{"line_number":371,"context_line":"    \"\"\"Generate the paths for tftp files for this instance"},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"    Raises IronicException if"}],"source_content_type":"text/x-python","patch_set":9,"id":"1abeadc6_d425480b","line":370,"updated":"2014-08-18 10:13:33.000000000","message":"Now I do not see usecase for d_info parameter, you can remove it.","commit_id":"6cccc6567d0b6f891868e296a558895bc9dcd979"},{"author":{"_account_id":1726,"name":"Ghe Rivero","email":"ghe.rivero@gmail.com","username":"ghe.rivero"},"change_message_id":"6abb141762ba5317f9e3284e3b14b091e8ee9dd5","unresolved":false,"context_lines":[{"line_number":367,"context_line":"    return (uuid, image_path)"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":""},{"line_number":370,"context_line":"def _get_image_info(node, ctx, d_info\u003dNone):"},{"line_number":371,"context_line":"    \"\"\"Generate the paths for tftp files for this instance"},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"    Raises IronicException if"}],"source_content_type":"text/x-python","patch_set":9,"id":"1abeadc6_5a887f22","line":370,"in_reply_to":"1abeadc6_d425480b","updated":"2014-08-18 11:03:38.000000000","message":"Done","commit_id":"6cccc6567d0b6f891868e296a558895bc9dcd979"}]}
