)]}'
{"nova/tests/unit/virt/libvirt/test_utils.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"98ff4cd02b6e86cfdec4acfe23b6451e35b23944","unresolved":false,"context_lines":[{"line_number":195,"context_line":"    @mock.patch(\u0027os.path.exists\u0027, return_value\u003dTrue)"},{"line_number":196,"context_line":"    @mock.patch(\u0027os.path.isdir\u0027, return_value\u003dTrue)"},{"line_number":197,"context_line":"    @mock.patch(\u0027nova.utils.execute\u0027)"},{"line_number":198,"context_line":"    def test_qemu_info_ploop(self, mock_execute, mock_isdir, mock_exists):"},{"line_number":199,"context_line":"        path \u003d \"/var/lib/nova\""},{"line_number":200,"context_line":"        example_output \u003d \"\"\"image: root.hds"},{"line_number":201,"context_line":"file format: parallels"}],"source_content_type":"text/x-python","patch_set":13,"id":"3aaa91ec_9f1aca7b","line":198,"updated":"2016-06-24 01:12:39.000000000","message":"Though not checked in the code, it might make sense to set the CONF.libvirt.images_type flag for this test.","commit_id":"728559a25e4c380f3a3a8f447a8932979afa8379"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"728b8e534e9e856434e118f3603c12f17bbba8d5","unresolved":false,"context_lines":[{"line_number":195,"context_line":"    @mock.patch(\u0027os.path.exists\u0027, return_value\u003dTrue)"},{"line_number":196,"context_line":"    @mock.patch(\u0027os.path.isdir\u0027, return_value\u003dTrue)"},{"line_number":197,"context_line":"    @mock.patch(\u0027nova.utils.execute\u0027)"},{"line_number":198,"context_line":"    def test_qemu_info_ploop(self, mock_execute, mock_isdir, mock_exists):"},{"line_number":199,"context_line":"        path \u003d \"/var/lib/nova\""},{"line_number":200,"context_line":"        example_output \u003d \"\"\"image: root.hds"},{"line_number":201,"context_line":"file format: parallels"}],"source_content_type":"text/x-python","patch_set":13,"id":"3aaa91ec_65aac11a","line":198,"in_reply_to":"3aaa91ec_9d95a834","updated":"2016-06-24 20:24:56.000000000","message":"Yeah that\u0027s fine.","commit_id":"728559a25e4c380f3a3a8f447a8932979afa8379"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"62b618d55e72776b6d5bf2eb0f893db320f7727c","unresolved":false,"context_lines":[{"line_number":195,"context_line":"    @mock.patch(\u0027os.path.exists\u0027, return_value\u003dTrue)"},{"line_number":196,"context_line":"    @mock.patch(\u0027os.path.isdir\u0027, return_value\u003dTrue)"},{"line_number":197,"context_line":"    @mock.patch(\u0027nova.utils.execute\u0027)"},{"line_number":198,"context_line":"    def test_qemu_info_ploop(self, mock_execute, mock_isdir, mock_exists):"},{"line_number":199,"context_line":"        path \u003d \"/var/lib/nova\""},{"line_number":200,"context_line":"        example_output \u003d \"\"\"image: root.hds"},{"line_number":201,"context_line":"file format: parallels"}],"source_content_type":"text/x-python","patch_set":13,"id":"3aaa91ec_9d95a834","line":198,"in_reply_to":"3aaa91ec_9f1aca7b","updated":"2016-06-24 07:46:45.000000000","message":"Will do if a new respin is required if you don\u0027t mind.","commit_id":"728559a25e4c380f3a3a8f447a8932979afa8379"}],"nova/virt/images.py":[{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"5ee9d37d8558bb01f554018526ab548aea90afdb","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        raise exception.DiskNotFound(location\u003dpath)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    try:"},{"line_number":54,"context_line":"        image_path \u003d path"},{"line_number":55,"context_line":"        if (os.path.isdir(path) and"},{"line_number":56,"context_line":"            os.path.exists(os.path.join(path, \"DiskDescriptor.xml\"))):"},{"line_number":57,"context_line":"            image_path \u003d os.path.join(path, \"root.hds\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"3aaa91ec_b7aab4d2","line":54,"updated":"2016-06-22 12:20:31.000000000","message":"Nit: I dislike use of the word \u0027image\u0027 in openstack for any purpose other than referring to the things glance stores. Unfortunately libvirt calls them images, so this gets muddy, but still. I\u0027d personally have modified \u0027path\u0027 here rather than created a new variable.","commit_id":"4c59c12637d68fb7beca5bee2357993cae4c9335"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"045b2845a27c60ecb7967e30bbc2a051d06c9b78","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        raise exception.DiskNotFound(location\u003dpath)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    try:"},{"line_number":54,"context_line":"        image_path \u003d path"},{"line_number":55,"context_line":"        if (os.path.isdir(path) and"},{"line_number":56,"context_line":"            os.path.exists(os.path.join(path, \"DiskDescriptor.xml\"))):"},{"line_number":57,"context_line":"            image_path \u003d os.path.join(path, \"root.hds\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"3aaa91ec_c9f36809","line":54,"in_reply_to":"3aaa91ec_b7aab4d2","updated":"2016-06-22 12:35:01.000000000","message":"Ok. Sounds reasonable. I introduced a new variable just to make it clear that we are altering original one. But with your proposal the change would even be 3 lines less.","commit_id":"4c59c12637d68fb7beca5bee2357993cae4c9335"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"1d3be156ec00424e95f7ed943ed7cfc3cdd831b7","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        image_path \u003d path"},{"line_number":55,"context_line":"        if (os.path.isdir(path) and"},{"line_number":56,"context_line":"            os.path.exists(os.path.join(path, \"DiskDescriptor.xml\"))):"},{"line_number":57,"context_line":"            image_path \u003d os.path.join(path, \"root.hds\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        cmd \u003d (\u0027env\u0027, \u0027LC_ALL\u003dC\u0027, \u0027LANG\u003dC\u0027, \u0027qemu-img\u0027, \u0027info\u0027, image_path)"},{"line_number":60,"context_line":"        if format is not None:"}],"source_content_type":"text/x-python","patch_set":9,"id":"3aaa91ec_98d7ddec","line":57,"updated":"2016-06-22 15:37:10.000000000","message":"You should really add a comment in your code to explain this condition is related to ploop.","commit_id":"fbabe64e5b1eab36ddbfeab3a9adf9977f735707"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"06469f72a302b2626d7c7b52a6a104a2e0681284","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        image_path \u003d path"},{"line_number":55,"context_line":"        if (os.path.isdir(path) and"},{"line_number":56,"context_line":"            os.path.exists(os.path.join(path, \"DiskDescriptor.xml\"))):"},{"line_number":57,"context_line":"            image_path \u003d os.path.join(path, \"root.hds\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        cmd \u003d (\u0027env\u0027, \u0027LC_ALL\u003dC\u0027, \u0027LANG\u003dC\u0027, \u0027qemu-img\u0027, \u0027info\u0027, image_path)"},{"line_number":60,"context_line":"        if format is not None:"}],"source_content_type":"text/x-python","patch_set":9,"id":"3aaa91ec_9ec0652c","line":57,"in_reply_to":"3aaa91ec_98d7ddec","updated":"2016-06-22 16:07:36.000000000","message":"Done","commit_id":"fbabe64e5b1eab36ddbfeab3a9adf9977f735707"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"a80afe4c7ed4bd1fe2326989e93e538c3cb6cfa4","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        image_path \u003d path"},{"line_number":55,"context_line":"        if (os.path.isdir(path) and"},{"line_number":56,"context_line":"            os.path.exists(os.path.join(path, \"DiskDescriptor.xml\"))):"},{"line_number":57,"context_line":"            image_path \u003d os.path.join(path, \"root.hds\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        cmd \u003d (\u0027env\u0027, \u0027LC_ALL\u003dC\u0027, \u0027LANG\u003dC\u0027, \u0027qemu-img\u0027, \u0027info\u0027, image_path)"},{"line_number":60,"context_line":"        if format is not None:"}],"source_content_type":"text/x-python","patch_set":9,"id":"3aaa91ec_d8f1656c","line":57,"in_reply_to":"3aaa91ec_98d7ddec","updated":"2016-06-22 15:39:50.000000000","message":"OK.","commit_id":"fbabe64e5b1eab36ddbfeab3a9adf9977f735707"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"f4af721896a9a87a7a664ee9d9ee53c94268e7a5","unresolved":false,"context_lines":[{"line_number":6711,"context_line":"                continue"},{"line_number":6712,"context_line":""},{"line_number":6713,"context_line":"            disk_type \u003d driver_nodes[cnt].get(\u0027type\u0027)"},{"line_number":6714,"context_line":"            if disk_type \u003d\u003d \"qcow2\":"},{"line_number":6715,"context_line":"                backing_file \u003d libvirt_utils.get_disk_backing_file(path)"},{"line_number":6716,"context_line":"                virt_size \u003d disk.get_disk_size(path)"},{"line_number":6717,"context_line":"                over_commit_size \u003d int(virt_size) - dk_size"}],"source_content_type":"text/x-python","patch_set":6,"id":"5a9d85d2_07873762","side":"PARENT","line":6714,"updated":"2016-06-20 10:53:39.000000000","message":"I see how the fix described in the commit message enabled you to make this change, but this is a different change to the one described in the commit message.\n\nCould you please separate the 2 changes into separate dependent commits, and add tests for both?","commit_id":"8435999c782d4cca00c9e362e393019b43abb366"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"30ba629dbbe0f3f66a0bda01de5d3a445d5f0f69","unresolved":false,"context_lines":[{"line_number":6711,"context_line":"                continue"},{"line_number":6712,"context_line":""},{"line_number":6713,"context_line":"            disk_type \u003d driver_nodes[cnt].get(\u0027type\u0027)"},{"line_number":6714,"context_line":"            if disk_type \u003d\u003d \"qcow2\":"},{"line_number":6715,"context_line":"                backing_file \u003d libvirt_utils.get_disk_backing_file(path)"},{"line_number":6716,"context_line":"                virt_size \u003d disk.get_disk_size(path)"},{"line_number":6717,"context_line":"                over_commit_size \u003d int(virt_size) - dk_size"}],"source_content_type":"text/x-python","patch_set":6,"id":"5a9d85d2_e7202bfa","side":"PARENT","line":6714,"in_reply_to":"5a9d85d2_07873762","updated":"2016-06-20 11:02:28.000000000","message":"Ok, sure. Will do in the next revision.","commit_id":"8435999c782d4cca00c9e362e393019b43abb366"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"f4af721896a9a87a7a664ee9d9ee53c94268e7a5","unresolved":false,"context_lines":[{"line_number":6713,"context_line":"            disk_type \u003d driver_nodes[cnt].get(\u0027type\u0027)"},{"line_number":6714,"context_line":"            if disk_type \u003d\u003d \"qcow2\" or disk_type \u003d\u003d \"ploop\":"},{"line_number":6715,"context_line":"                backing_file \u003d libvirt_utils.get_disk_backing_file(path)"},{"line_number":6716,"context_line":"                virt_size \u003d disk.get_disk_size(path)"},{"line_number":6717,"context_line":"                over_commit_size \u003d int(virt_size) - dk_size"},{"line_number":6718,"context_line":"            else:"},{"line_number":6719,"context_line":"                backing_file \u003d \"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"5a9d85d2_47cf7fb0","line":6716,"updated":"2016-06-20 10:53:39.000000000","message":"Unrelated to your change: we run qemu-img info twice on 2 successive lines to retrieve the same data :(\n\nAnd we don\u0027t pass the (known) file format for either of them :((","commit_id":"1f4d142a420a16dc172e5c82dda30e8f46c2cf88"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"41bbfaa274f3787bab3aa51a8d33aa74829b0990","unresolved":false,"context_lines":[{"line_number":6713,"context_line":"            disk_type \u003d driver_nodes[cnt].get(\u0027type\u0027)"},{"line_number":6714,"context_line":"            if disk_type \u003d\u003d \"qcow2\" or disk_type \u003d\u003d \"ploop\":"},{"line_number":6715,"context_line":"                backing_file \u003d libvirt_utils.get_disk_backing_file(path)"},{"line_number":6716,"context_line":"                virt_size \u003d disk.get_disk_size(path)"},{"line_number":6717,"context_line":"                over_commit_size \u003d int(virt_size) - dk_size"},{"line_number":6718,"context_line":"            else:"},{"line_number":6719,"context_line":"                backing_file \u003d \"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"5a9d85d2_2c9c8f68","line":6716,"in_reply_to":"5a9d85d2_47cf7fb0","updated":"2016-06-21 14:13:36.000000000","message":"I removed this change from the review. I think it\u0027s more appropriate to do it in scope of https://review.openstack.org/#/c/222567/","commit_id":"1f4d142a420a16dc172e5c82dda30e8f46c2cf88"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"30ba629dbbe0f3f66a0bda01de5d3a445d5f0f69","unresolved":false,"context_lines":[{"line_number":6713,"context_line":"            disk_type \u003d driver_nodes[cnt].get(\u0027type\u0027)"},{"line_number":6714,"context_line":"            if disk_type \u003d\u003d \"qcow2\" or disk_type \u003d\u003d \"ploop\":"},{"line_number":6715,"context_line":"                backing_file \u003d libvirt_utils.get_disk_backing_file(path)"},{"line_number":6716,"context_line":"                virt_size \u003d disk.get_disk_size(path)"},{"line_number":6717,"context_line":"                over_commit_size \u003d int(virt_size) - dk_size"},{"line_number":6718,"context_line":"            else:"},{"line_number":6719,"context_line":"                backing_file \u003d \"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"5a9d85d2_876a0719","line":6716,"in_reply_to":"5a9d85d2_47cf7fb0","updated":"2016-06-20 11:02:28.000000000","message":"I\u0027ll try to address this either.","commit_id":"1f4d142a420a16dc172e5c82dda30e8f46c2cf88"}]}
