)]}'
{"nova/conductor/manager.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":43,"context_line":"from nova.compute import vm_states"},{"line_number":44,"context_line":"from nova.conductor.tasks import cross_cell_migrate"},{"line_number":45,"context_line":"from nova.conductor.tasks import live_migrate_v2"},{"line_number":46,"context_line":"from nova.conductor.tasks import live_migrate"},{"line_number":47,"context_line":"from nova.conductor.tasks import migrate"},{"line_number":48,"context_line":"from nova import context as nova_context"},{"line_number":49,"context_line":"from nova import exception"}],"source_content_type":"text/x-python","patch_set":1,"id":"e8b6c18e_da5e39c5","line":46,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: H306: imports not in alphabetical order (nova.conductor.tasks.live_migrate_v2, nova.conductor.tasks.live_migrate)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"}],"nova/conductor/tasks/live_migrate_v2.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":448,"context_line":"        return (selection.service_host, selection.nodename, selection.limits)"},{"line_number":449,"context_line":""},{"line_number":450,"context_line":"    def _check_compatible_with_source_hypervisor(self, destination):"},{"line_number":451,"context_line":"        source_info \u003d objects.ComputeNode.get_first_node_by_host_for_old_compat("},{"line_number":452,"context_line":"            self.context, self.source)"},{"line_number":453,"context_line":"        dest_ctxt \u003d self._get_cell_context_for_host(destination)"},{"line_number":454,"context_line":"        destination_info \u003d ("}],"source_content_type":"text/x-python","patch_set":1,"id":"efddf4f1_e6998f77","line":451,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (80 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"}],"nova/tests/unit/conductor/tasks/test_live_migrate_v2.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":100,"context_line":""},{"line_number":101,"context_line":"        with test.nested("},{"line_number":102,"context_line":"            mock.patch.object(instance, \u0027get_bdms\u0027, return_value\u003d[]),"},{"line_number":103,"context_line":"            mock.patch.object(instance, \u0027obj_load_attr\u0027, side_effect\u003dload_attr),"},{"line_number":104,"context_line":"            mock.patch.object("},{"line_number":105,"context_line":"                live_migrate_v2.cross_cell_migrate,"},{"line_number":106,"context_line":"                \u0027clone_creatable_object\u0027, return_value\u003dtarget_instance),"}],"source_content_type":"text/x-python","patch_set":1,"id":"ab91e079_290e3ec4","line":103,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (80 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":139,"context_line":"            compute_rpcapi\u003dself.compute_rpcapi,"},{"line_number":140,"context_line":"            network_api\u003dself.network_api)"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    @mock.patch(\u0027nova.objects.ComputeNode.get_first_node_by_host_for_old_compat\u0027)"},{"line_number":143,"context_line":"    def test_execute(self, mock_get_cn):"},{"line_number":144,"context_line":"        self.network_api.has_port_binding_extension.return_value \u003d True"},{"line_number":145,"context_line":"        dest_check_data \u003d mock.sentinel.dest_check_data"}],"source_content_type":"text/x-python","patch_set":1,"id":"27e4dfd1_e1124bfb","line":142,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (81 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":143,"context_line":"    def test_execute(self, mock_get_cn):"},{"line_number":144,"context_line":"        self.network_api.has_port_binding_extension.return_value \u003d True"},{"line_number":145,"context_line":"        dest_check_data \u003d mock.sentinel.dest_check_data"},{"line_number":146,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_destination.return_value \u003d ("},{"line_number":147,"context_line":"            dest_check_data)"},{"line_number":148,"context_line":"        migrate_data \u003d objects.LibvirtLiveMigrateData(vifs\u003d[])"},{"line_number":149,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_source.return_value \u003d ("}],"source_content_type":"text/x-python","patch_set":1,"id":"d04ed735_d79a833b","line":146,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (82 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":168,"context_line":"            self.network_api)"},{"line_number":169,"context_line":"        self.assertIs(result, migrate_data)"},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"    @mock.patch(\u0027nova.objects.ComputeNode.get_first_node_by_host_for_old_compat\u0027)"},{"line_number":172,"context_line":"    def test_execute_no_port_binding_extension(self, mock_get_cn):"},{"line_number":173,"context_line":"        self.network_api.has_port_binding_extension.return_value \u003d False"},{"line_number":174,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_destination.return_value \u003d ("}],"source_content_type":"text/x-python","patch_set":1,"id":"0a2b61e1_1901aa55","line":171,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (81 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":171,"context_line":"    @mock.patch(\u0027nova.objects.ComputeNode.get_first_node_by_host_for_old_compat\u0027)"},{"line_number":172,"context_line":"    def test_execute_no_port_binding_extension(self, mock_get_cn):"},{"line_number":173,"context_line":"        self.network_api.has_port_binding_extension.return_value \u003d False"},{"line_number":174,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_destination.return_value \u003d ("},{"line_number":175,"context_line":"            mock.sentinel.dest_check_data)"},{"line_number":176,"context_line":"        migrate_data \u003d objects.LibvirtLiveMigrateData(vifs\u003d[])"},{"line_number":177,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_source.return_value \u003d ("}],"source_content_type":"text/x-python","patch_set":1,"id":"2072793c_e8fd4d81","line":174,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (82 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":183,"context_line":"            task.execute()"},{"line_number":184,"context_line":"        mock_bind.assert_not_called()"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"    @mock.patch(\u0027nova.objects.ComputeNode.get_first_node_by_host_for_old_compat\u0027)"},{"line_number":187,"context_line":"    def test_execute_dest_check_timeout(self, mock_get_cn):"},{"line_number":188,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_destination.side_effect \u003d ("},{"line_number":189,"context_line":"            messaging.MessagingTimeout())"}],"source_content_type":"text/x-python","patch_set":1,"id":"57383c60_8926a264","line":186,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (81 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":185,"context_line":""},{"line_number":186,"context_line":"    @mock.patch(\u0027nova.objects.ComputeNode.get_first_node_by_host_for_old_compat\u0027)"},{"line_number":187,"context_line":"    def test_execute_dest_check_timeout(self, mock_get_cn):"},{"line_number":188,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_destination.side_effect \u003d ("},{"line_number":189,"context_line":"            messaging.MessagingTimeout())"},{"line_number":190,"context_line":"        task \u003d self._make_task()"},{"line_number":191,"context_line":"        self.assertRaises("}],"source_content_type":"text/x-python","patch_set":1,"id":"06081680_2bbf3f28","line":188,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (81 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":191,"context_line":"        self.assertRaises("},{"line_number":192,"context_line":"            exception.MigrationPreCheckError, task.execute)"},{"line_number":193,"context_line":""},{"line_number":194,"context_line":"    @mock.patch(\u0027nova.objects.ComputeNode.get_first_node_by_host_for_old_compat\u0027)"},{"line_number":195,"context_line":"    def test_execute_source_check_timeout(self, mock_get_cn):"},{"line_number":196,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_destination.return_value \u003d ("},{"line_number":197,"context_line":"            mock.sentinel.dest_check_data)"}],"source_content_type":"text/x-python","patch_set":1,"id":"c1387799_8a254c5a","line":194,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (81 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":193,"context_line":""},{"line_number":194,"context_line":"    @mock.patch(\u0027nova.objects.ComputeNode.get_first_node_by_host_for_old_compat\u0027)"},{"line_number":195,"context_line":"    def test_execute_source_check_timeout(self, mock_get_cn):"},{"line_number":196,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_destination.return_value \u003d ("},{"line_number":197,"context_line":"            mock.sentinel.dest_check_data)"},{"line_number":198,"context_line":"        self.compute_rpcapi.check_can_live_migrate_v2_source.side_effect \u003d ("},{"line_number":199,"context_line":"            messaging.MessagingTimeout())"}],"source_content_type":"text/x-python","patch_set":1,"id":"2d2d527a_33ebda70","line":196,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: E501 line too long (82 \u003e 79 characters)","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"b86a633ae46e7215993dfb7e3e9f11c879faf696","unresolved":false,"context_lines":[{"line_number":599,"context_line":""},{"line_number":600,"context_line":"    @mock.patch(\u0027nova.objects.Service.get_by_compute_host\u0027)"},{"line_number":601,"context_line":"    def test_check_host_is_up(self, mock_get_service):"},{"line_number":602,"context_line":"        mock_service \u003d mock_get_service.return_value"},{"line_number":603,"context_line":"        with test.nested("},{"line_number":604,"context_line":"            mock.patch.object(self.task, \u0027_get_cell_context_for_host\u0027,"},{"line_number":605,"context_line":"                              return_value\u003dself.context),"}],"source_content_type":"text/x-python","patch_set":1,"id":"781baf19_d1b23c62","line":602,"updated":"2026-10-05 19:03:17.000000000","message":"pep8: F841 local variable \u0027mock_service\u0027 is assigned to but never used","commit_id":"7fea8516a8e8cc29c79e7dc5dc1be9d3233c4f6c"}]}
