)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3d64344509e6ac20b855ebadca37c43021c9cb31","unresolved":false,"context_lines":[{"line_number":13,"context_line":"We should consider disk_mappings supplied and add image corresponding"},{"line_number":14,"context_line":"disks only if we are asked."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Implements blueprint virtuozzo-container-boot-from-volume"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I607d0f948a1b7aaf35643defa84c6e3cbade9cff"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"fa32b979_49d4a3e7","line":16,"updated":"2015-06-25 15:27:12.000000000","message":"IMO this should have just been a bug fix, not a blueprint.","commit_id":"6f647eb23ae6f494c175767a05ae083d39163ff4"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"fa41ae25c2459f63569b8a18a15e6d504dd0dcf5","unresolved":false,"context_lines":[{"line_number":13,"context_line":"We should consider disk_mappings supplied and add image corresponding"},{"line_number":14,"context_line":"disks only if we are asked."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Implements blueprint virtuozzo-container-boot-from-volume"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I607d0f948a1b7aaf35643defa84c6e3cbade9cff"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"fa32b979_3beac6d8","line":16,"in_reply_to":"fa32b979_49d4a3e7","updated":"2015-06-25 15:38:16.000000000","message":"Makes sense. This is due to the lack of experience here.","commit_id":"6f647eb23ae6f494c175767a05ae083d39163ff4"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"01d006a073401589769db5702156a755878bb962","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Maxim Nestratov \u003cmnestratov@virtuozzo.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-23 23:58:15 -0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"libvirt: don\u0027t add filesystem disk to parallels containers unconditionally"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently, in case boot from volume is chosen for Virtuozzo container"},{"line_number":10,"context_line":"(\"parallels\" libvirt driver virt_type with vm_mode\u003dexe), an incorrect"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3a50d1a3_cf82fbfe","line":7,"updated":"2015-07-29 19:12:45.000000000","message":"With respect to the test that you changed, shouldn\u0027t you add an assertion that the filesystem disk isn\u0027t added?","commit_id":"befe6c2c7a77eb2388805841a610831b4cde43c1"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"659d6ba327de4520e41fee97e3f6093dcdf277bf","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Maxim Nestratov \u003cmnestratov@virtuozzo.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-23 23:58:15 -0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"libvirt: don\u0027t add filesystem disk to parallels containers unconditionally"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently, in case boot from volume is chosen for Virtuozzo container"},{"line_number":10,"context_line":"(\"parallels\" libvirt driver virt_type with vm_mode\u003dexe), an incorrect"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3a50d1a3_ef4b3785","line":7,"in_reply_to":"3a50d1a3_cf82fbfe","updated":"2015-07-29 19:21:12.000000000","message":"Makes sence","commit_id":"befe6c2c7a77eb2388805841a610831b4cde43c1"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"9cd81c0b3f59516db618623919aba8c9c89be263","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Maxim Nestratov \u003cmnestratov@virtuozzo.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-23 23:58:15 -0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"libvirt: don\u0027t add filesystem disk to parallels containers unconditionally"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently, in case boot from volume is chosen for Virtuozzo container"},{"line_number":10,"context_line":"(\"parallels\" libvirt driver virt_type with vm_mode\u003dexe), an incorrect"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3a50d1a3_46a9ca8f","line":7,"in_reply_to":"3a50d1a3_ef4b3785","updated":"2015-07-30 14:31:56.000000000","message":"Done","commit_id":"befe6c2c7a77eb2388805841a610831b4cde43c1"}],"nova/compute/api.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3d64344509e6ac20b855ebadca37c43021c9cb31","unresolved":false,"context_lines":[{"line_number":719,"context_line":"                                 block_device_mapping, legacy_bdm):"},{"line_number":720,"context_line":"        # NOTE (ndipanov): Assume root dev name is \u0027vda\u0027 if not supplied."},{"line_number":721,"context_line":"        #                  It\u0027s needed for legacy conversion to work."},{"line_number":722,"context_line":"        if CONF.libvirt.virt_type \u003d\u003d \u0027parallels\u0027:"},{"line_number":723,"context_line":"            default_root_device \u003d \u0027sda\u0027"},{"line_number":724,"context_line":"        else:"},{"line_number":725,"context_line":"            default_root_device \u003d \u0027vda\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa32b979_c90c3395","line":722,"updated":"2015-06-25 15:27:12.000000000","message":"This is not good, we don\u0027t want virt driver specifics leaking into the nova compute API - is there a more generic way to handle this using image/volume metadata or something?  Or could we have a method in the virt driver API that can return the default root device for us and then this logic can be hidden in the libvirt driver.","commit_id":"6f647eb23ae6f494c175767a05ae083d39163ff4"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"26fb7b39e4805bb6b938385ce51b9c059c438858","unresolved":false,"context_lines":[{"line_number":719,"context_line":"                                 block_device_mapping, legacy_bdm):"},{"line_number":720,"context_line":"        # NOTE (ndipanov): Assume root dev name is \u0027vda\u0027 if not supplied."},{"line_number":721,"context_line":"        #                  It\u0027s needed for legacy conversion to work."},{"line_number":722,"context_line":"        if CONF.libvirt.virt_type \u003d\u003d \u0027parallels\u0027:"},{"line_number":723,"context_line":"            default_root_device \u003d \u0027sda\u0027"},{"line_number":724,"context_line":"        else:"},{"line_number":725,"context_line":"            default_root_device \u003d \u0027vda\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa32b979_5eb21895","line":722,"in_reply_to":"fa32b979_3ebdd4b0","updated":"2015-06-25 16:04:17.000000000","message":"Thanks. Will do this.","commit_id":"6f647eb23ae6f494c175767a05ae083d39163ff4"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d4150c3a14ff6799b14df3954fb98843971284db","unresolved":false,"context_lines":[{"line_number":719,"context_line":"                                 block_device_mapping, legacy_bdm):"},{"line_number":720,"context_line":"        # NOTE (ndipanov): Assume root dev name is \u0027vda\u0027 if not supplied."},{"line_number":721,"context_line":"        #                  It\u0027s needed for legacy conversion to work."},{"line_number":722,"context_line":"        if CONF.libvirt.virt_type \u003d\u003d \u0027parallels\u0027:"},{"line_number":723,"context_line":"            default_root_device \u003d \u0027sda\u0027"},{"line_number":724,"context_line":"        else:"},{"line_number":725,"context_line":"            default_root_device \u003d \u0027vda\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa32b979_db895a27","line":722,"in_reply_to":"fa32b979_bbca569e","updated":"2015-06-25 15:38:02.000000000","message":"To reiterate what I said in IRC:\n\nmriedem: mnestratov: unless there is something i\u0027m not finding with image/volume metadata that would have the virt type info in it, i would add a get_default_root_device() method to the virt driver api which returns \u0027vda\u0027 in the ComputeDriver base class, and is overridden in the libvirt driver to return \u0027sda\u0027 if you\u0027re using parallels","commit_id":"6f647eb23ae6f494c175767a05ae083d39163ff4"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"da1e249b72375482346b5d473ce6cd8f8271296c","unresolved":false,"context_lines":[{"line_number":719,"context_line":"                                 block_device_mapping, legacy_bdm):"},{"line_number":720,"context_line":"        # NOTE (ndipanov): Assume root dev name is \u0027vda\u0027 if not supplied."},{"line_number":721,"context_line":"        #                  It\u0027s needed for legacy conversion to work."},{"line_number":722,"context_line":"        if CONF.libvirt.virt_type \u003d\u003d \u0027parallels\u0027:"},{"line_number":723,"context_line":"            default_root_device \u003d \u0027sda\u0027"},{"line_number":724,"context_line":"        else:"},{"line_number":725,"context_line":"            default_root_device \u003d \u0027vda\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa32b979_bbca569e","line":722,"in_reply_to":"fa32b979_c90c3395","updated":"2015-06-25 15:34:07.000000000","message":"True. Sounds reasonable","commit_id":"6f647eb23ae6f494c175767a05ae083d39163ff4"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7fdd80aaf59256d13932056b1ef139870c6891b0","unresolved":false,"context_lines":[{"line_number":719,"context_line":"                                 block_device_mapping, legacy_bdm):"},{"line_number":720,"context_line":"        # NOTE (ndipanov): Assume root dev name is \u0027vda\u0027 if not supplied."},{"line_number":721,"context_line":"        #                  It\u0027s needed for legacy conversion to work."},{"line_number":722,"context_line":"        if CONF.libvirt.virt_type \u003d\u003d \u0027parallels\u0027:"},{"line_number":723,"context_line":"            default_root_device \u003d \u0027sda\u0027"},{"line_number":724,"context_line":"        else:"},{"line_number":725,"context_line":"            default_root_device \u003d \u0027vda\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa32b979_3ebdd4b0","line":722,"in_reply_to":"fa32b979_db05da79","updated":"2015-06-25 15:55:44.000000000","message":"Ah, looks like you need to depend on this series from Nikola:\n\nhttps://review.openstack.org/#/q/status:open+project:openstack/nova+branch:master+topic:bug/1452224,n,z","commit_id":"6f647eb23ae6f494c175767a05ae083d39163ff4"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"042e916b4081d8355ea511415363a369ade39e2b","unresolved":false,"context_lines":[{"line_number":719,"context_line":"                                 block_device_mapping, legacy_bdm):"},{"line_number":720,"context_line":"        # NOTE (ndipanov): Assume root dev name is \u0027vda\u0027 if not supplied."},{"line_number":721,"context_line":"        #                  It\u0027s needed for legacy conversion to work."},{"line_number":722,"context_line":"        if CONF.libvirt.virt_type \u003d\u003d \u0027parallels\u0027:"},{"line_number":723,"context_line":"            default_root_device \u003d \u0027sda\u0027"},{"line_number":724,"context_line":"        else:"},{"line_number":725,"context_line":"            default_root_device \u003d \u0027vda\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa32b979_db05da79","line":722,"in_reply_to":"fa32b979_db895a27","updated":"2015-06-25 15:39:54.000000000","message":"Actually, that won\u0027t work since nova.compute.api doesn\u0027t have a reference to the virt driver, I was thinking of the compute manager.\n\nSo...could this check be done in the compute manager?\n\nOtherwise we have to rely on image/volume metadata in here to make this decision it seems.","commit_id":"6f647eb23ae6f494c175767a05ae083d39163ff4"}],"nova/tests/unit/virt/libvirt/test_driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7739d27a301b35b20700bdf2af08938350a0b7c8","unresolved":false,"context_lines":[{"line_number":11254,"context_line":"        ct_instance[\"vm_mode\"] \u003d vm_mode.EXE"},{"line_number":11255,"context_line":"        instance_ref \u003d objects.Instance(**ct_instance)"},{"line_number":11256,"context_line":""},{"line_number":11257,"context_line":"        image_meta \u003d {}"},{"line_number":11258,"context_line":""},{"line_number":11259,"context_line":"        disk_info \u003d blockinfo.get_disk_info(CONF.libvirt.virt_type,"},{"line_number":11260,"context_line":"                                                instance_ref,"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a50d1a3_af41af64","line":11257,"updated":"2015-07-29 19:21:39.000000000","message":"Rather than update this existing test which didn\u0027t have \u0027disk\u0027 in the disk_info passed into _get_guest_config, you should have added a new test that covers the case that \u0027disk\u0027 is in disk_info[\u0027mapping\u0027], then make the assertion both ways that the filesystem device is added or not depending on the condition.","commit_id":"befe6c2c7a77eb2388805841a610831b4cde43c1"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8b1fa7469473e0c1939ed86cf8c7d8d4eefff3fe","unresolved":false,"context_lines":[{"line_number":11257,"context_line":"        image_meta \u003d {}"},{"line_number":11258,"context_line":""},{"line_number":11259,"context_line":"        disk_info \u003d blockinfo.get_disk_info(CONF.libvirt.virt_type,"},{"line_number":11260,"context_line":"                                                instance_ref,"},{"line_number":11261,"context_line":"                                                image_meta)"},{"line_number":11262,"context_line":""},{"line_number":11263,"context_line":"        cfg \u003d drvr._get_guest_config(instance_ref,"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a50d1a3_8fc15382","line":11260,"updated":"2015-07-29 19:08:59.000000000","message":"nit: alignment here should be cleaned up","commit_id":"befe6c2c7a77eb2388805841a610831b4cde43c1"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"659d6ba327de4520e41fee97e3f6093dcdf277bf","unresolved":false,"context_lines":[{"line_number":11257,"context_line":"        image_meta \u003d {}"},{"line_number":11258,"context_line":""},{"line_number":11259,"context_line":"        disk_info \u003d blockinfo.get_disk_info(CONF.libvirt.virt_type,"},{"line_number":11260,"context_line":"                                                instance_ref,"},{"line_number":11261,"context_line":"                                                image_meta)"},{"line_number":11262,"context_line":""},{"line_number":11263,"context_line":"        cfg \u003d drvr._get_guest_config(instance_ref,"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a50d1a3_0f9a2314","line":11260,"in_reply_to":"3a50d1a3_8fc15382","updated":"2015-07-29 19:21:12.000000000","message":"ok","commit_id":"befe6c2c7a77eb2388805841a610831b4cde43c1"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4322c8bf2766ca6932088d1f5d1341e6733baca4","unresolved":false,"context_lines":[{"line_number":11233,"context_line":"        self.assertIsInstance(cfg.devices[3],"},{"line_number":11234,"context_line":"                              vconfig.LibvirtConfigGuestVideo)"},{"line_number":11235,"context_line":""},{"line_number":11236,"context_line":"    def _test_get_guest_config_parallels_volume(self, vmmode, devices):"},{"line_number":11237,"context_line":"        self.flags(virt_type\u003d\u0027parallels\u0027, group\u003d\u0027libvirt\u0027)"},{"line_number":11238,"context_line":"        drvr \u003d libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True)"},{"line_number":11239,"context_line":"        ct_instance \u003d self.test_instance.copy()"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a50d1a3_c9f08d94","line":11236,"updated":"2015-07-30 14:49:28.000000000","message":"nit: I\u0027d name devices as num_devices or expected_num_devices.  Not a huge deal though.","commit_id":"f6b693d0153b82cbd481000a5b4081493b5f2b07"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4322c8bf2766ca6932088d1f5d1341e6733baca4","unresolved":false,"context_lines":[{"line_number":11261,"context_line":"            cfg \u003d drvr._get_guest_config(instance_ref,"},{"line_number":11262,"context_line":"                                    _fake_network_info(self.stubs, 1),"},{"line_number":11263,"context_line":"                                    None, disk_info, None, info)"},{"line_number":11264,"context_line":"            mock_save.assert_called_with()"},{"line_number":11265,"context_line":""},{"line_number":11266,"context_line":"        self.assertEqual(\"parallels\", cfg.virt_type)"},{"line_number":11267,"context_line":"        self.assertEqual(instance_ref[\"uuid\"], cfg.uuid)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a50d1a3_a9e0a1cd","line":11264,"updated":"2015-07-30 14:49:28.000000000","message":"If this is only called once, then use assert_called_once_with().","commit_id":"f6b693d0153b82cbd481000a5b4081493b5f2b07"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"34c29c914eec70970a13613e5c9c4aa5fb9d5f63","unresolved":false,"context_lines":[{"line_number":11261,"context_line":"            cfg \u003d drvr._get_guest_config(instance_ref,"},{"line_number":11262,"context_line":"                                    _fake_network_info(self.stubs, 1),"},{"line_number":11263,"context_line":"                                    None, disk_info, None, info)"},{"line_number":11264,"context_line":"            mock_save.assert_called_with()"},{"line_number":11265,"context_line":""},{"line_number":11266,"context_line":"        self.assertEqual(\"parallels\", cfg.virt_type)"},{"line_number":11267,"context_line":"        self.assertEqual(instance_ref[\"uuid\"], cfg.uuid)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a50d1a3_d4c6e067","line":11264,"in_reply_to":"3a50d1a3_a9e0a1cd","updated":"2015-07-30 14:59:11.000000000","message":"ok","commit_id":"f6b693d0153b82cbd481000a5b4081493b5f2b07"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4322c8bf2766ca6932088d1f5d1341e6733baca4","unresolved":false,"context_lines":[{"line_number":11279,"context_line":"            if (isinstance(dev, vconfig.LibvirtConfigGuestDisk) and"},{"line_number":11280,"context_line":"                (dev.source_path is None or"},{"line_number":11281,"context_line":"               \u0027disk.local\u0027 not in dev.source_path)):"},{"line_number":11282,"context_line":"                self.assertEqual(dev.source_device, \"disk\")"},{"line_number":11283,"context_line":"                self.assertEqual(dev.target_dev, \"sda\")"},{"line_number":11284,"context_line":"                disk_found \u003d True"},{"line_number":11285,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a50d1a3_0953d56d","line":11282,"updated":"2015-07-30 14:49:28.000000000","message":"nit: should be expected, observed, so \u0027disk\u0027 would come first.","commit_id":"f6b693d0153b82cbd481000a5b4081493b5f2b07"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"34c29c914eec70970a13613e5c9c4aa5fb9d5f63","unresolved":false,"context_lines":[{"line_number":11279,"context_line":"            if (isinstance(dev, vconfig.LibvirtConfigGuestDisk) and"},{"line_number":11280,"context_line":"                (dev.source_path is None or"},{"line_number":11281,"context_line":"               \u0027disk.local\u0027 not in dev.source_path)):"},{"line_number":11282,"context_line":"                self.assertEqual(dev.source_device, \"disk\")"},{"line_number":11283,"context_line":"                self.assertEqual(dev.target_dev, \"sda\")"},{"line_number":11284,"context_line":"                disk_found \u003d True"},{"line_number":11285,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a50d1a3_14f7688d","line":11282,"in_reply_to":"3a50d1a3_0953d56d","updated":"2015-07-30 14:59:11.000000000","message":"Oh, sure. Yesterday you already told me. The problem is that many calls in tests don\u0027t follow this rule and I just looked at these wrong examples.","commit_id":"f6b693d0153b82cbd481000a5b4081493b5f2b07"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4322c8bf2766ca6932088d1f5d1341e6733baca4","unresolved":false,"context_lines":[{"line_number":11280,"context_line":"                (dev.source_path is None or"},{"line_number":11281,"context_line":"               \u0027disk.local\u0027 not in dev.source_path)):"},{"line_number":11282,"context_line":"                self.assertEqual(dev.source_device, \"disk\")"},{"line_number":11283,"context_line":"                self.assertEqual(dev.target_dev, \"sda\")"},{"line_number":11284,"context_line":"                disk_found \u003d True"},{"line_number":11285,"context_line":""},{"line_number":11286,"context_line":"        self.assertTrue(disk_found)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a50d1a3_c94c0dcb","line":11283,"updated":"2015-07-30 14:49:28.000000000","message":"ditto","commit_id":"f6b693d0153b82cbd481000a5b4081493b5f2b07"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4322c8bf2766ca6932088d1f5d1341e6733baca4","unresolved":false,"context_lines":[{"line_number":11287,"context_line":""},{"line_number":11288,"context_line":"    def test_get_guest_config_parallels_volume(self):"},{"line_number":11289,"context_line":"        self._test_get_guest_config_parallels_volume(vm_mode.EXE, 4)"},{"line_number":11290,"context_line":"        self._test_get_guest_config_parallels_volume(vm_mode.HVM, 6)"},{"line_number":11291,"context_line":""},{"line_number":11292,"context_line":""},{"line_number":11293,"context_line":"class HostStateTestCase(test.NoDBTestCase):"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a50d1a3_c9abad74","line":11290,"updated":"2015-07-30 14:49:28.000000000","message":"Not sure why we need this one, isn\u0027t it a duplicate of test_get_guest_config_parallels_vm above?  I guess the difference is the existing test doesn\u0027t use bdms.","commit_id":"f6b693d0153b82cbd481000a5b4081493b5f2b07"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"34c29c914eec70970a13613e5c9c4aa5fb9d5f63","unresolved":false,"context_lines":[{"line_number":11287,"context_line":""},{"line_number":11288,"context_line":"    def test_get_guest_config_parallels_volume(self):"},{"line_number":11289,"context_line":"        self._test_get_guest_config_parallels_volume(vm_mode.EXE, 4)"},{"line_number":11290,"context_line":"        self._test_get_guest_config_parallels_volume(vm_mode.HVM, 6)"},{"line_number":11291,"context_line":""},{"line_number":11292,"context_line":""},{"line_number":11293,"context_line":"class HostStateTestCase(test.NoDBTestCase):"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a50d1a3_f41bdcc8","line":11290,"in_reply_to":"3a50d1a3_c9abad74","updated":"2015-07-30 14:59:11.000000000","message":"No it is not a duplicate, You are right. Existing tests don\u0027t cover block devices cases.","commit_id":"f6b693d0153b82cbd481000a5b4081493b5f2b07"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8b1fa7469473e0c1939ed86cf8c7d8d4eefff3fe","unresolved":false,"context_lines":[{"line_number":3189,"context_line":"                libvirt_utils.get_instance_path(instance), \u0027rootfs\u0027)"},{"line_number":3190,"context_line":"            devices.append(fs)"},{"line_number":3191,"context_line":"        elif os_type \u003d\u003d vm_mode.EXE and CONF.libvirt.virt_type \u003d\u003d \"parallels\":"},{"line_number":3192,"context_line":"            if \u0027disk\u0027 in disk_mapping:"},{"line_number":3193,"context_line":"                fs \u003d self._get_guest_fs_config(instance, \"disk\")"},{"line_number":3194,"context_line":"                devices.append(fs)"},{"line_number":3195,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a50d1a3_cf267b66","line":3192,"updated":"2015-07-29 19:08:59.000000000","message":"Which test covers the case that \u0027disk\u0027 is in disk_mapping?","commit_id":"befe6c2c7a77eb2388805841a610831b4cde43c1"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"659d6ba327de4520e41fee97e3f6093dcdf277bf","unresolved":false,"context_lines":[{"line_number":3189,"context_line":"                libvirt_utils.get_instance_path(instance), \u0027rootfs\u0027)"},{"line_number":3190,"context_line":"            devices.append(fs)"},{"line_number":3191,"context_line":"        elif os_type \u003d\u003d vm_mode.EXE and CONF.libvirt.virt_type \u003d\u003d \"parallels\":"},{"line_number":3192,"context_line":"            if \u0027disk\u0027 in disk_mapping:"},{"line_number":3193,"context_line":"                fs \u003d self._get_guest_fs_config(instance, \"disk\")"},{"line_number":3194,"context_line":"                devices.append(fs)"},{"line_number":3195,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a50d1a3_6f040749","line":3192,"in_reply_to":"3a50d1a3_cf267b66","updated":"2015-07-29 19:21:12.000000000","message":"test_get_guest_config_parallels_ct","commit_id":"befe6c2c7a77eb2388805841a610831b4cde43c1"}]}
