)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"ae702a82629a45126bf9eef28f2178a6b86cab6a","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Shutdown server before change boot order for agent drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Some technologies (such as OneView) needs to shutdown the server"},{"line_number":10,"context_line":"before change it\u0027s boot device order. In this patch we propose"},{"line_number":11,"context_line":"a solution to ensure the boot device order will only be changed"},{"line_number":12,"context_line":"when the server is completely off."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a71b18c_6403c142","line":9,"updated":"2016-12-12 14:48:52.000000000","message":"s/needs/need","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"a5037b71d3308ec88d739418b1fd5c4e9de0e8ca","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Shutdown server before change boot order for agent drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Some technologies (such as OneView) needs to shutdown the server"},{"line_number":10,"context_line":"before change it\u0027s boot device order. In this patch we propose"},{"line_number":11,"context_line":"a solution to ensure the boot device order will only be changed"},{"line_number":12,"context_line":"when the server is completely off."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a6eadb0_70e4090d","line":9,"in_reply_to":"3a71b18c_6403c142","updated":"2016-12-12 19:15:37.000000000","message":"Done","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"ae702a82629a45126bf9eef28f2178a6b86cab6a","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Shutdown server before change boot order for agent drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Some technologies (such as OneView) needs to shutdown the server"},{"line_number":10,"context_line":"before change it\u0027s boot device order. In this patch we propose"},{"line_number":11,"context_line":"a solution to ensure the boot device order will only be changed"},{"line_number":12,"context_line":"when the server is completely off."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a71b18c_44ea4575","line":10,"updated":"2016-12-12 14:48:52.000000000","message":"Typo: \"changing its\" (no apostrophe)","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"a5037b71d3308ec88d739418b1fd5c4e9de0e8ca","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Shutdown server before change boot order for agent drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Some technologies (such as OneView) needs to shutdown the server"},{"line_number":10,"context_line":"before change it\u0027s boot device order. In this patch we propose"},{"line_number":11,"context_line":"a solution to ensure the boot device order will only be changed"},{"line_number":12,"context_line":"when the server is completely off."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a6eadb0_90f1a5d0","line":10,"in_reply_to":"3a71b18c_44ea4575","updated":"2016-12-12 19:15:37.000000000","message":"Done","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"822b81677124490887f8743cb16593cc5f09a046","unresolved":false,"context_lines":[{"line_number":11,"context_line":"a solution to ensure the boot device order will only be changed"},{"line_number":12,"context_line":"when the server is completely off. This patch also unbreaks"},{"line_number":13,"context_line":"dsvm-tempest-ironic-agent_pxe_oneview gate of agent_pxe_oneview"},{"line_number":14,"context_line":"driver."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: I4f5693e129923fba92624acbbecb3559b71fbfe9"},{"line_number":17,"context_line":"Partial-Bug: #1503855"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"df3967d1_69b3b74e","line":14,"updated":"2017-08-03 08:35:03.000000000","message":"it also moves prepare_instance call, I wonder if it is important enough to mention","commit_id":"ce6e89bd0fa986908bee8bd4da2e8efed7916521"}],"ironic/drivers/modules/agent.py":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"7860d2bd2b8228f32963c0efd65f25e4314e4c56","unresolved":false,"context_lines":[{"line_number":296,"context_line":"            self.prepare_instance_to_boot(task, root_uuid, efi_sys_uuid)"},{"line_number":297,"context_line":"        LOG.info(_LI(\u0027Image successfully written to node %s\u0027), node.uuid)"},{"line_number":298,"context_line":"        LOG.debug(\u0027Rebooting node %s to instance\u0027, node.uuid)"},{"line_number":299,"context_line":"        if iwdi:"},{"line_number":300,"context_line":"            manager_utils.node_set_boot_device(task, \u0027disk\u0027, persistent\u003dTrue)"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"        self.reboot_and_finish_deploy(task)"},{"line_number":303,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"1a1ced50_0c767bd8","side":"PARENT","line":300,"range":{"start_line":299,"start_character":8,"end_line":300,"end_character":76},"updated":"2017-03-23 16:24:18.000000000","message":"Why this cannot be handled in the OneView driver\u0027s implementation of reboot_to_instance()?\nhttps://github.com/openstack/ironic/blob/master/ironic/drivers/modules/oneview/deploy.py#L282\n\nMay be you can power off the node and then call this base implementation.","commit_id":"26bba448a62e8453a4aad21ec14eaa8d00e112c4"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"b64427d4370d9c4d5ac0b1f3f233b9044e44d720","unresolved":false,"context_lines":[{"line_number":296,"context_line":"            self.prepare_instance_to_boot(task, root_uuid, efi_sys_uuid)"},{"line_number":297,"context_line":"        LOG.info(_LI(\u0027Image successfully written to node %s\u0027), node.uuid)"},{"line_number":298,"context_line":"        LOG.debug(\u0027Rebooting node %s to instance\u0027, node.uuid)"},{"line_number":299,"context_line":"        if iwdi:"},{"line_number":300,"context_line":"            manager_utils.node_set_boot_device(task, \u0027disk\u0027, persistent\u003dTrue)"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"        self.reboot_and_finish_deploy(task)"},{"line_number":303,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"ffe62b97_a6139566","side":"PARENT","line":300,"range":{"start_line":299,"start_character":8,"end_line":300,"end_character":76},"in_reply_to":"1a1ced50_0c767bd8","updated":"2017-03-24 12:17:28.000000000","message":"The motivation for the patch is to remove this entire class https://github.com/openstack/ironic/blob/master/ironic/drivers/modules/oneview/deploy.py#L279\n\nIt\u0027s a customization where after any change in ironic\u0027s agent deploy implementation we have to copy and paste \u0027reboot_to_instance\u0027 and \u0027reboot_and_finish_deploy\u0027 methods implementation.\n\nWe want ironic turn off the node for us before change the device.","commit_id":"26bba448a62e8453a4aad21ec14eaa8d00e112c4"}],"ironic/drivers/modules/agent_base_vendor.py":[{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"ae702a82629a45126bf9eef28f2178a6b86cab6a","unresolved":false,"context_lines":[{"line_number":588,"context_line":"                msg \u003d _(\u0027Failed to continue agent deployment.\u0027)"},{"line_number":589,"context_line":"                log_and_raise_deployment_error(task, msg)"},{"line_number":590,"context_line":""},{"line_number":591,"context_line":"            iwdi \u003d node.driver_internal_info.get(\u0027is_whole_disk_image\u0027)"},{"line_number":592,"context_line":""},{"line_number":593,"context_line":"            if iwdi:"},{"line_number":594,"context_line":"                manager_utils.node_set_boot_device("}],"source_content_type":"text/x-python","patch_set":1,"id":"3a71b18c_7711b151","line":591,"updated":"2016-12-12 14:48:52.000000000","message":"It looks like you don\u0027t use iwdi again after this, and it\u0027s not all that clearly-named; I\u0027d simplify this to\n\n    if node.driver_internal_info.get(\u0027is_whole_disk_image\u0027):","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"a5037b71d3308ec88d739418b1fd5c4e9de0e8ca","unresolved":false,"context_lines":[{"line_number":588,"context_line":"                msg \u003d _(\u0027Failed to continue agent deployment.\u0027)"},{"line_number":589,"context_line":"                log_and_raise_deployment_error(task, msg)"},{"line_number":590,"context_line":""},{"line_number":591,"context_line":"            iwdi \u003d node.driver_internal_info.get(\u0027is_whole_disk_image\u0027)"},{"line_number":592,"context_line":""},{"line_number":593,"context_line":"            if iwdi:"},{"line_number":594,"context_line":"                manager_utils.node_set_boot_device("}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_75587b57","line":591,"in_reply_to":"3a71b18c_7711b151","updated":"2016-12-12 19:15:37.000000000","message":"Removed","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"c119e7cbc0bbd91ad601ff226e3d179690114a74","unresolved":false,"context_lines":[{"line_number":591,"context_line":"            iwdi \u003d node.driver_internal_info.get(\u0027is_whole_disk_image\u0027)"},{"line_number":592,"context_line":""},{"line_number":593,"context_line":"            if iwdi:"},{"line_number":594,"context_line":"                manager_utils.node_set_boot_device("},{"line_number":595,"context_line":"                    task, \u0027disk\u0027, persistent\u003dTrue)"},{"line_number":596,"context_line":""},{"line_number":597,"context_line":"            manager_utils.node_power_action(task, states.POWER_ON)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_9311bcb2","line":594,"range":{"start_line":594,"start_character":16,"end_line":594,"end_character":29},"updated":"2016-12-12 15:20:17.000000000","message":"It seems like it\u0027s better to use deploy_utils\u0027 try_set_boot_device as it handles one more corner case.\n\nAlso, do we actually need this? boot.prepare_instance already has some logic to select the boot device.","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"fe5e511fe26bf68a0b75142e0135ce057f686177","unresolved":false,"context_lines":[{"line_number":591,"context_line":"            iwdi \u003d node.driver_internal_info.get(\u0027is_whole_disk_image\u0027)"},{"line_number":592,"context_line":""},{"line_number":593,"context_line":"            if iwdi:"},{"line_number":594,"context_line":"                manager_utils.node_set_boot_device("},{"line_number":595,"context_line":"                    task, \u0027disk\u0027, persistent\u003dTrue)"},{"line_number":596,"context_line":""},{"line_number":597,"context_line":"            manager_utils.node_power_action(task, states.POWER_ON)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_2708b927","line":594,"range":{"start_line":594,"start_character":16,"end_line":594,"end_character":29},"in_reply_to":"1a6eadb0_9090c597","updated":"2016-12-16 18:25:11.000000000","message":"OK, looking at the jobs after this is removed, agent jobs with wholedisk fail. the boot.prepare_instance sets boot device to PXE based on default_boot_option, and then this call sets it back to disk based on iwdi value. This is weird.","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"a5037b71d3308ec88d739418b1fd5c4e9de0e8ca","unresolved":false,"context_lines":[{"line_number":591,"context_line":"            iwdi \u003d node.driver_internal_info.get(\u0027is_whole_disk_image\u0027)"},{"line_number":592,"context_line":""},{"line_number":593,"context_line":"            if iwdi:"},{"line_number":594,"context_line":"                manager_utils.node_set_boot_device("},{"line_number":595,"context_line":"                    task, \u0027disk\u0027, persistent\u003dTrue)"},{"line_number":596,"context_line":""},{"line_number":597,"context_line":"            manager_utils.node_power_action(task, states.POWER_ON)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_9090c597","line":594,"range":{"start_line":594,"start_character":16,"end_line":594,"end_character":29},"in_reply_to":"1a6eadb0_9311bcb2","updated":"2016-12-12 19:15:37.000000000","message":"Great, since boot.prepare_instance already calls deploy_utils.try_set_boot_device(task, boot_devices.DISK) and persistent param is default to true, that does exactly the same, so we can drop these lines.","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"0e6ac7c0f8bce393e91ac7e305ff272d2005ad54","unresolved":false,"context_lines":[{"line_number":607,"context_line":"                task, root_uuid\u003droot_uuid,"},{"line_number":608,"context_line":"                efi_system_part_uuid\u003defi_sys_uuid)"},{"line_number":609,"context_line":"        try:"},{"line_number":610,"context_line":"            task.driver.boot.prepare_instance(task)"},{"line_number":611,"context_line":"        except Exception as e:"},{"line_number":612,"context_line":"            LOG.error(_LE(\u0027Deploy failed for instance %(instance)s. \u0027"},{"line_number":613,"context_line":"                          \u0027Error: %(error)s\u0027),"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_d5b94fcd","side":"PARENT","line":610,"updated":"2016-12-18 22:18:25.000000000","message":"I prefer to keep hacks which are needed for some technologies in the drivers for these technologies. What about this solution: your management interface checks deploy state of the node and saves boot device in the node internal_info if node is deploying, your power interface checks deploy state and internal_info and does boot device setting before power on.","commit_id":"d0e1d5e1f84367f4f868a62776212e6296a2dee2"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"a7e43823b77285e7af9b1053240a4163ec991373","unresolved":false,"context_lines":[{"line_number":607,"context_line":"                task, root_uuid\u003droot_uuid,"},{"line_number":608,"context_line":"                efi_system_part_uuid\u003defi_sys_uuid)"},{"line_number":609,"context_line":"        try:"},{"line_number":610,"context_line":"            task.driver.boot.prepare_instance(task)"},{"line_number":611,"context_line":"        except Exception as e:"},{"line_number":612,"context_line":"            LOG.error(_LE(\u0027Deploy failed for instance %(instance)s. \u0027"},{"line_number":613,"context_line":"                          \u0027Error: %(error)s\u0027),"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_4131d3eb","side":"PARENT","line":610,"in_reply_to":"1a6eadb0_d5b94fcd","updated":"2016-12-19 21:41:48.000000000","message":"Hey Yuriy, thank you for your comment. The way I\u0027m implementing this change was discussed in the channel and suggested in this patch: https://review.openstack.org/#/c/400733/. If this current change be not possible, we can do your solution. :)","commit_id":"d0e1d5e1f84367f4f868a62776212e6296a2dee2"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"0fff8639c0d98bfa4c60451165437a874005555d","unresolved":false,"context_lines":[{"line_number":579,"context_line":""},{"line_number":580,"context_line":"            task.driver.network.remove_provisioning_network(task)"},{"line_number":581,"context_line":"            task.driver.network.configure_tenant_networks(task)"},{"line_number":582,"context_line":"            try:"},{"line_number":583,"context_line":"                task.driver.boot.prepare_instance(task)"},{"line_number":584,"context_line":"            except Exception as e:"},{"line_number":585,"context_line":"                LOG.error(_LE(\u0027Deploy failed for instance %(instance)s. \u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_100bec24","line":582,"updated":"2016-12-16 23:08:51.000000000","message":"By removing this from prepare_instance_to_boot() at L685, I hope there is no effect on call to prepare_instance_to_boot() from drivers/modules.iscsi_deploy.py. \n\nhttps://github.com/openstack/ironic/blob/849c7ef12692b45c1fa298fedcfd47084a913a4e/ironic/drivers/modules/iscsi_deploy.py#L404","commit_id":"d54e851ad1bf6fdf1bdac57a0ddd4bdf3678ff05"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"e708d473cd473b2c42262c057332c19a059fe535","unresolved":false,"context_lines":[{"line_number":594,"context_line":"            try:"},{"line_number":595,"context_line":"                task.driver.boot.prepare_instance(task)"},{"line_number":596,"context_line":"            except Exception as e:"},{"line_number":597,"context_line":"                LOG.error(_LE(\u0027Deploy failed for instance %(instance)s. \u0027"},{"line_number":598,"context_line":"                              \u0027Error: %(error)s\u0027),"},{"line_number":599,"context_line":"                          {\u0027instance\u0027: node.instance_uuid, \u0027error\u0027: e})"},{"line_number":600,"context_line":"                msg \u003d _(\u0027Failed to continue agent deployment.\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"1a1ced50_903d50df","line":597,"range":{"start_line":597,"start_character":26,"end_line":597,"end_character":29},"updated":"2017-03-22 17:28:24.000000000","message":"The log translation is supposed to be removed from Ironic [1]. Could you please remove this?\n\n[1]https://bugs.launchpad.net/ironic/+bug/1674374","commit_id":"b55a9ad49de729816b48765f16b75769d8c10f74"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"7860d2bd2b8228f32963c0efd65f25e4314e4c56","unresolved":false,"context_lines":[{"line_number":594,"context_line":"            try:"},{"line_number":595,"context_line":"                task.driver.boot.prepare_instance(task)"},{"line_number":596,"context_line":"            except Exception as e:"},{"line_number":597,"context_line":"                LOG.error(_LE(\u0027Deploy failed for instance %(instance)s. \u0027"},{"line_number":598,"context_line":"                              \u0027Error: %(error)s\u0027),"},{"line_number":599,"context_line":"                          {\u0027instance\u0027: node.instance_uuid, \u0027error\u0027: e})"},{"line_number":600,"context_line":"                msg \u003d _(\u0027Failed to continue agent deployment.\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"1a1ced50_2c9257a0","line":597,"range":{"start_line":597,"start_character":16,"end_line":597,"end_character":26},"updated":"2017-03-23 16:24:18.000000000","message":"This LOG.error is not required here as log_and_raise_deployment_error() is called @ L601","commit_id":"b55a9ad49de729816b48765f16b75769d8c10f74"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"b64427d4370d9c4d5ac0b1f3f233b9044e44d720","unresolved":false,"context_lines":[{"line_number":594,"context_line":"            try:"},{"line_number":595,"context_line":"                task.driver.boot.prepare_instance(task)"},{"line_number":596,"context_line":"            except Exception as e:"},{"line_number":597,"context_line":"                LOG.error(_LE(\u0027Deploy failed for instance %(instance)s. \u0027"},{"line_number":598,"context_line":"                              \u0027Error: %(error)s\u0027),"},{"line_number":599,"context_line":"                          {\u0027instance\u0027: node.instance_uuid, \u0027error\u0027: e})"},{"line_number":600,"context_line":"                msg \u003d _(\u0027Failed to continue agent deployment.\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ffe62b97_e1fe2704","line":597,"range":{"start_line":597,"start_character":16,"end_line":597,"end_character":26},"in_reply_to":"1a1ced50_2c9257a0","updated":"2017-03-24 12:17:28.000000000","message":"Done","commit_id":"b55a9ad49de729816b48765f16b75769d8c10f74"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"822b81677124490887f8743cb16593cc5f09a046","unresolved":false,"context_lines":[{"line_number":590,"context_line":"                manager_utils.node_power_action(task, states.POWER_OFF)"},{"line_number":591,"context_line":""},{"line_number":592,"context_line":"            task.driver.network.remove_provisioning_network(task)"},{"line_number":593,"context_line":"            task.driver.network.configure_tenant_networks(task)"},{"line_number":594,"context_line":"            try:"},{"line_number":595,"context_line":"                task.driver.boot.prepare_instance(task)"},{"line_number":596,"context_line":"            except Exception as e:"}],"source_content_type":"text/x-python","patch_set":7,"id":"df3967d1_4986b368","line":593,"updated":"2017-08-03 08:35:03.000000000","message":"let\u0027s move this after your block. I\u0027d prefer to do it right before power on, to avoid tenant networks bound if prepare_instance fails","commit_id":"ce6e89bd0fa986908bee8bd4da2e8efed7916521"}],"releasenotes/notes/agent-change-boot-device-cff4fc0e93587547.yaml":[{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"ae702a82629a45126bf9eef28f2178a6b86cab6a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Ensure the server was shutdown before change the boot"},{"line_number":4,"context_line":"    device order for agent based drivers. This patch moves"},{"line_number":5,"context_line":"    the place the boot order is changed to be invoked right"},{"line_number":6,"context_line":"    after the server is off."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"3a71b18c_f765c144","line":3,"updated":"2016-12-12 14:48:52.000000000","message":"s/change/changing","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"a5037b71d3308ec88d739418b1fd5c4e9de0e8ca","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Ensure the server was shutdown before change the boot"},{"line_number":4,"context_line":"    device order for agent based drivers. This patch moves"},{"line_number":5,"context_line":"    the place the boot order is changed to be invoked right"},{"line_number":6,"context_line":"    after the server is off."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"1a6eadb0_f03019a1","line":3,"in_reply_to":"3a71b18c_f765c144","updated":"2016-12-12 19:15:37.000000000","message":"Done","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"ae702a82629a45126bf9eef28f2178a6b86cab6a","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Ensure the server was shutdown before change the boot"},{"line_number":4,"context_line":"    device order for agent based drivers. This patch moves"},{"line_number":5,"context_line":"    the place the boot order is changed to be invoked right"},{"line_number":6,"context_line":"    after the server is off."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"3a71b18c_17cebd2c","line":5,"updated":"2016-12-12 14:48:52.000000000","message":"s/to be invoked//","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"a5037b71d3308ec88d739418b1fd5c4e9de0e8ca","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Ensure the server was shutdown before change the boot"},{"line_number":4,"context_line":"    device order for agent based drivers. This patch moves"},{"line_number":5,"context_line":"    the place the boot order is changed to be invoked right"},{"line_number":6,"context_line":"    after the server is off."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"1a6eadb0_10267568","line":5,"in_reply_to":"3a71b18c_17cebd2c","updated":"2016-12-12 19:15:37.000000000","message":"Done","commit_id":"6fa8d632771edf82afb7841de98c8503538d4faa"}]}
