)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"9ce4a5e9e013791ae5728b831416c52918c91df8","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Local boot support for IPA"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch adds support for local boot when using the IPA ramdisk, it"},{"line_number":10,"context_line":"also make sure it clear the PXE configurations and set the node to boot"},{"line_number":11,"context_line":"from disk permanently as part for the deployment if local boot is set."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implement blueprint local-boot-support-with-partition-images"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"ba7be1f8_030b6f2a","line":10,"updated":"2015-02-25 13:55:53.000000000","message":"s/clear/clears/\n\ns/set the node/sets the node/","commit_id":"068f3cfbf94d29c312f15f72e3e7ea9f290cd945"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"9ce4a5e9e013791ae5728b831416c52918c91df8","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch adds support for local boot when using the IPA ramdisk, it"},{"line_number":10,"context_line":"also make sure it clear the PXE configurations and set the node to boot"},{"line_number":11,"context_line":"from disk permanently as part for the deployment if local boot is set."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implement blueprint local-boot-support-with-partition-images"},{"line_number":14,"context_line":"Depends-On: Ia588aafc240b55119c02f1254addc0cf796f88c5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"ba7be1f8_862dad97","line":11,"updated":"2015-02-25 13:55:53.000000000","message":"s/part for the/part of the/","commit_id":"068f3cfbf94d29c312f15f72e3e7ea9f290cd945"}],"ironic/drivers/modules/pxe.py":[{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"6dca2e1d4ff6001228b3a71b54e7c556202e77f9","unresolved":false,"context_lines":[{"line_number":577,"context_line":"                try_set_boot_device(task, boot_devices.DISK)"},{"line_number":578,"context_line":"                # If it\u0027s going to boot from the local disk, get rid of"},{"line_number":579,"context_line":"                # the PXE configuration files used for the deployment"},{"line_number":580,"context_line":"                pxe_utils.clean_up_pxe_config(task)"},{"line_number":581,"context_line":"            else:"},{"line_number":582,"context_line":"                pxe_config_path \u003d pxe_utils.get_pxe_config_file_path(node.uuid)"},{"line_number":583,"context_line":"                deploy_utils.switch_pxe_config(pxe_config_path, root_uuid,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_55f127cc","line":580,"updated":"2015-02-20 22:07:45.000000000","message":"I have to dbl check, but will the pxe config be recreated if a redeploy or (at some point) a rescue is requested, those would have to re pxe boot into the deployment ramdisk.","commit_id":"edd880e63b7cc0bba47acc226b6a8e7eb49cd031"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"15ea9e9dfc478e49f383b6900e59dd6c885a2041","unresolved":false,"context_lines":[{"line_number":577,"context_line":"                try_set_boot_device(task, boot_devices.DISK)"},{"line_number":578,"context_line":"                # If it\u0027s going to boot from the local disk, get rid of"},{"line_number":579,"context_line":"                # the PXE configuration files used for the deployment"},{"line_number":580,"context_line":"                pxe_utils.clean_up_pxe_config(task)"},{"line_number":581,"context_line":"            else:"},{"line_number":582,"context_line":"                pxe_config_path \u003d pxe_utils.get_pxe_config_file_path(node.uuid)"},{"line_number":583,"context_line":"                deploy_utils.switch_pxe_config(pxe_config_path, root_uuid,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_7d10a601","line":580,"in_reply_to":"ba7be1f8_55f127cc","updated":"2015-02-23 17:03:40.000000000","message":"For rebuild yes, it\u0027s going to call ConductorManager.do_node_deploy()[1] which will call do_node_deploy (outside the ConductorManager class) that calls prepare()[2] and regenerate the PXE config files\n\nFor rescue, we don\u0027t support it today.\n\n[1] https://github.com/openstack/ironic/blob/master/ironic/conductor/manager.py#L674-L692\n\n[2] https://github.com/openstack/ironic/blob/master/ironic/conductor/manager.py#L1486","commit_id":"edd880e63b7cc0bba47acc226b6a8e7eb49cd031"},{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"fadac131737b7cb011601edb3300009420647ef9","unresolved":false,"context_lines":[{"line_number":619,"context_line":"                        \u0027error\u0027: result[\u0027command_error\u0027]})"},{"line_number":620,"context_line":"                self._log_and_raise_deployment_error(task, msg)"},{"line_number":621,"context_line":""},{"line_number":622,"context_line":"            try_set_boot_device(task, boot_devices.DISK)"},{"line_number":623,"context_line":"            # If it\u0027s going to boot from the local disk, get rid of"},{"line_number":624,"context_line":"            # the PXE configuration files used for the deployment"},{"line_number":625,"context_line":"            pxe_utils.clean_up_pxe_config(task)"}],"source_content_type":"text/x-python","patch_set":7,"id":"ba7be1f8_08d1aacc","line":622,"updated":"2015-02-26 05:03:38.000000000","message":"try_set_boot_device raises anything except IPMIFailure on uefi systems. shouldn\u0027t we just set deploy to fail then just like we do above ?","commit_id":"08c001668a814a1fd89cdc37dd8d47bf664218e2"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"d8c324bd7b46ae6c3d6f5e805a7d96d0d803d0d3","unresolved":false,"context_lines":[{"line_number":619,"context_line":"                        \u0027error\u0027: result[\u0027command_error\u0027]})"},{"line_number":620,"context_line":"                self._log_and_raise_deployment_error(task, msg)"},{"line_number":621,"context_line":""},{"line_number":622,"context_line":"            try_set_boot_device(task, boot_devices.DISK)"},{"line_number":623,"context_line":"            # If it\u0027s going to boot from the local disk, get rid of"},{"line_number":624,"context_line":"            # the PXE configuration files used for the deployment"},{"line_number":625,"context_line":"            pxe_utils.clean_up_pxe_config(task)"}],"source_content_type":"text/x-python","patch_set":7,"id":"ba7be1f8_56e418ab","line":622,"in_reply_to":"ba7be1f8_08d1aacc","updated":"2015-02-26 10:30:48.000000000","message":"will do","commit_id":"08c001668a814a1fd89cdc37dd8d47bf664218e2"}],"ironic/tests/drivers/test_pxe.py":[{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"aec12981ab0890656c8e8e61813a55478cc088b3","unresolved":false,"context_lines":[{"line_number":1108,"context_line":"        mock_pxe_opts.assert_called_once_with(self.task, mock.ANY)"},{"line_number":1109,"context_line":"        mock_start_iscsi.assert_called_once_with(self.node, \u0027fake-iqn\u0027)"},{"line_number":1110,"context_line":"        mock_install_bootloader.assert_called_once_with(self.node,"},{"line_number":1111,"context_line":"                                                        \u0027fake-root-uuid\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba7be1f8_6865ffb3","line":1111,"updated":"2015-02-25 01:50:41.000000000","message":"May be assert node.target_provision_state and node.last_error ?","commit_id":"94a0bda76db0c48cafa31fcc503cc814d1202102"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"46b4e52bebd217823f8e314f4c4e2b9548899ed8","unresolved":false,"context_lines":[{"line_number":1130,"context_line":"        mock_install_bootloader.return_value \u003d {\u0027command_error\u0027: \u0027Call Batman\u0027,"},{"line_number":1131,"context_line":"                                                \u0027command_status\u0027: \u0027FAILED\u0027}"},{"line_number":1132,"context_line":""},{"line_number":1133,"context_line":"        self.assertRaises(exception.InstanceDeployFailure,"},{"line_number":1134,"context_line":"                          self.driver.vendor.continue_deploy, self.task)"},{"line_number":1135,"context_line":""},{"line_number":1136,"context_line":"        mock_image_info.assert_called_once_with(self.node, self.context)"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba7be1f8_63c98b25","line":1133,"updated":"2015-02-25 13:53:04.000000000","message":"Maybe:\n result \u003d self.assertRaises(...)\n\n self.assertEqual(result.format_message(), \"The message we expect to get back\")","commit_id":"068f3cfbf94d29c312f15f72e3e7ea9f290cd945"},{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"fadac131737b7cb011601edb3300009420647ef9","unresolved":false,"context_lines":[{"line_number":979,"context_line":"    def test_continue_deploy_command_failed(self, mock_image_info,"},{"line_number":980,"context_line":"                                            mock_pxe_opts, mock_start_iscsi,"},{"line_number":981,"context_line":"                                            mock_cont_deploy):"},{"line_number":982,"context_line":"        command_error \u003d \u0027Gotham city is in danger!\u0027"},{"line_number":983,"context_line":"        mock_start_iscsi.return_value \u003d {\u0027command_error\u0027: command_error,"},{"line_number":984,"context_line":"                                         \u0027command_status\u0027: \u0027FAILED\u0027}"},{"line_number":985,"context_line":"        mock_pxe_opts.return_value \u003d {\u0027iscsi_target_iqn\u0027: \u0027fake-iqn\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"ba7be1f8_48056244","line":982,"updated":"2015-02-26 05:03:38.000000000","message":"nit :) \n\n  command_error \u003d \"Gotham city is in danger and can\u0027t find batman.\"","commit_id":"08c001668a814a1fd89cdc37dd8d47bf664218e2"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"d8c324bd7b46ae6c3d6f5e805a7d96d0d803d0d3","unresolved":false,"context_lines":[{"line_number":979,"context_line":"    def test_continue_deploy_command_failed(self, mock_image_info,"},{"line_number":980,"context_line":"                                            mock_pxe_opts, mock_start_iscsi,"},{"line_number":981,"context_line":"                                            mock_cont_deploy):"},{"line_number":982,"context_line":"        command_error \u003d \u0027Gotham city is in danger!\u0027"},{"line_number":983,"context_line":"        mock_start_iscsi.return_value \u003d {\u0027command_error\u0027: command_error,"},{"line_number":984,"context_line":"                                         \u0027command_status\u0027: \u0027FAILED\u0027}"},{"line_number":985,"context_line":"        mock_pxe_opts.return_value \u003d {\u0027iscsi_target_iqn\u0027: \u0027fake-iqn\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"ba7be1f8_b6f4745b","line":982,"in_reply_to":"ba7be1f8_48056244","updated":"2015-02-26 10:30:48.000000000","message":"lol","commit_id":"08c001668a814a1fd89cdc37dd8d47bf664218e2"}]}
