)]}'
{"nova/tests/unit/virt/libvirt/test_vif.py":[{"author":{"_account_id":25733,"name":"Jan Gutter","email":"github@jangutter.com","username":"jangutter"},"change_message_id":"f847e780aebc2fb26e63b0bb7a546e572645fbbe","unresolved":false,"context_lines":[{"line_number":1389,"context_line":"        self._assertMacEquals(node, self.vif_agilio_ovs_forwarder)"},{"line_number":1390,"context_line":"        self._assertModel(xml, network_model.VIF_MODEL_VIRTIO)"},{"line_number":1391,"context_line":""},{"line_number":1392,"context_line":"    def test_ivs_ethernet_driver(self):"},{"line_number":1393,"context_line":"        self.flags(firewall_driver\u003d\"nova.virt.firewall.NoopFirewallDriver\")"},{"line_number":1394,"context_line":"        d \u003d vif.LibvirtGenericVIFDriver()"},{"line_number":1395,"context_line":"        xml \u003d self._get_instance_xml(d, self.vif_ivs)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_e98f34ca","line":1392,"range":{"start_line":1392,"start_character":8,"end_line":1392,"end_character":32},"updated":"2018-06-01 14:02:21.000000000","message":"Note to reviewers: without the change, this test trips up.\n\n nova.tests.unit.virt.libvirt.test_vif.LibvirtVifTestCase.test_ivs_ethernet_driver\n ---------------------------------------------------------------------------------\n\n Captured traceback:\n ~~~~~~~~~~~~~~~~~~~\n     Traceback (most recent call last):\n       File \"nova/tests/unit/virt/libvirt/test_vif.py\", line 1395, in test_ivs_ethernet_driver\n         xml \u003d self._get_instance_xml(d, self.vif_ivs)\n       File \"nova/tests/unit/virt/libvirt/test_vif.py\", line 572, in _get_instance_xml\n         hostimpl)\n       File \"nova/virt/libvirt/vif.py\", line 583, in get_config\n         vnic_type)\n       File \"nova/virt/libvirt/vif.py\", line 555, in _get_config_os_vif\n         func(instance, vif, conf, host)\n       File \"nova/virt/libvirt/vif.py\", line 463, in _set_config_VIFGeneric\n         dev \u003d self.get_vif_devname(vif)\n       File \"nova/virt/libvirt/vif.py\", line 108, in get_vif_devname\n         return (\"nic\" + vif[\u0027id\u0027])[:network_model.NIC_NAME_LEN]\n     TypeError: \u0027VIFGeneric\u0027 object has no attribute \u0027__getitem__\u0027","commit_id":"0389598f1e88e08d3e463ef8d3d04788f06e0f57"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"7496cf5054e27a5cd4653482715032d53aa606a8","unresolved":false,"context_lines":[{"line_number":1389,"context_line":"        self._assertMacEquals(node, self.vif_agilio_ovs_forwarder)"},{"line_number":1390,"context_line":"        self._assertModel(xml, network_model.VIF_MODEL_VIRTIO)"},{"line_number":1391,"context_line":""},{"line_number":1392,"context_line":"    def test_ivs_ethernet_driver(self):"},{"line_number":1393,"context_line":"        self.flags(firewall_driver\u003d\"nova.virt.firewall.NoopFirewallDriver\")"},{"line_number":1394,"context_line":"        d \u003d vif.LibvirtGenericVIFDriver()"},{"line_number":1395,"context_line":"        xml \u003d self._get_instance_xml(d, self.vif_ivs)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_f494d18e","line":1392,"range":{"start_line":1392,"start_character":8,"end_line":1392,"end_character":32},"in_reply_to":"5f7c97a3_5f7059a4","updated":"2018-06-04 09:41:18.000000000","message":"I understand the error but the point is to assert that vif_name is set with the correct value so an assertion should be done at some point.","commit_id":"0389598f1e88e08d3e463ef8d3d04788f06e0f57"},{"author":{"_account_id":20751,"name":"Aditya Vaja","email":"wolverine.av@gmail.com","username":"wolverineav"},"change_message_id":"4c5c3a4db49156cc3afbbd22530f79f932914714","unresolved":false,"context_lines":[{"line_number":1389,"context_line":"        self._assertMacEquals(node, self.vif_agilio_ovs_forwarder)"},{"line_number":1390,"context_line":"        self._assertModel(xml, network_model.VIF_MODEL_VIRTIO)"},{"line_number":1391,"context_line":""},{"line_number":1392,"context_line":"    def test_ivs_ethernet_driver(self):"},{"line_number":1393,"context_line":"        self.flags(firewall_driver\u003d\"nova.virt.firewall.NoopFirewallDriver\")"},{"line_number":1394,"context_line":"        d \u003d vif.LibvirtGenericVIFDriver()"},{"line_number":1395,"context_line":"        xml \u003d self._get_instance_xml(d, self.vif_ivs)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_5f7059a4","line":1392,"range":{"start_line":1392,"start_character":8,"end_line":1392,"end_character":32},"in_reply_to":"5f7c97a3_e98f34ca","updated":"2018-06-01 16:37:49.000000000","message":"gotcha. +1","commit_id":"0389598f1e88e08d3e463ef8d3d04788f06e0f57"},{"author":{"_account_id":25733,"name":"Jan Gutter","email":"github@jangutter.com","username":"jangutter"},"change_message_id":"cb24c3a2d592b118cf73ede16d49c221b3ca00d2","unresolved":false,"context_lines":[{"line_number":1389,"context_line":"        self._assertMacEquals(node, self.vif_agilio_ovs_forwarder)"},{"line_number":1390,"context_line":"        self._assertModel(xml, network_model.VIF_MODEL_VIRTIO)"},{"line_number":1391,"context_line":""},{"line_number":1392,"context_line":"    def test_ivs_ethernet_driver(self):"},{"line_number":1393,"context_line":"        self.flags(firewall_driver\u003d\"nova.virt.firewall.NoopFirewallDriver\")"},{"line_number":1394,"context_line":"        d \u003d vif.LibvirtGenericVIFDriver()"},{"line_number":1395,"context_line":"        xml \u003d self._get_instance_xml(d, self.vif_ivs)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_7749a38c","line":1392,"range":{"start_line":1392,"start_character":8,"end_line":1392,"end_character":32},"in_reply_to":"5f7c97a3_f494d18e","updated":"2018-06-04 11:20:04.000000000","message":"There\u0027s a check to see that vif_name is set for ivs in:\n\n https://github.com/openstack/nova/blob/master/nova/tests/unit/network/test_os_vif_util.py#L981\n  self.assertEqual(expected_vif_name, actual.vif_name)\n\nWhen the Nova VIF gets converted to an OS-VIF object, I think you have to check each Nova VIF -\u003e OS-VIF object conversion, individually.\n\nAnother unit test I can think of is checking _set_config_VIFGeneric directly (i.e. pass os-vif objects to them and verifying rendering), but there doesn\u0027t seem to be tests for these kinds of functions.","commit_id":"0389598f1e88e08d3e463ef8d3d04788f06e0f57"}],"nova/virt/libvirt/vif.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8e2e74e463f65870311b3150ec4b79001328870d","unresolved":false,"context_lines":[{"line_number":466,"context_line":"    def _set_config_VIFBridge(self, instance, vif, conf, host\u003dNone):"},{"line_number":467,"context_line":"        conf.net_type \u003d \"bridge\""},{"line_number":468,"context_line":"        conf.source_dev \u003d vif.bridge_name"},{"line_number":469,"context_line":"        conf.target_dev \u003d vif.vif_name"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"        if self.get_firewall_required_os_vif(vif):"},{"line_number":472,"context_line":"            mac_id \u003d vif.address.replace(\u0027:\u0027, \u0027\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f7c97a3_2bacdf86","line":469,"range":{"start_line":469,"start_character":8,"end_line":469,"end_character":38},"updated":"2018-07-25 13:09:39.000000000","message":"I see so it\u0027s like this, and that\u0027s what set_vif_host_backend_ethernet_config sets (conf.target_dev).","commit_id":"6bfb1959184d6e262e63c25e9b1ef7d1fdf63a8e"}]}
