)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"db80e46fcbf2bf0c6055a911b52f219a338270c6","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP: Implement cleanup_instance_network_on_host for neutron API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This implements the cleanup_instance_network_on_host method"},{"line_number":10,"context_line":"in the neutron API which will delete port bindings for the"},{"line_number":11,"context_line":"given instance and the given host, similar to how"},{"line_number":12,"context_line":"setup_networks_on_host works when teardown\u003dTrue and the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa7e38b_b63b5437","line":9,"updated":"2019-12-03 19:16:51.000000000","message":"Should mention that today this method is only used when shelve offloading an instance but the implementation should not affect that since the port would still be associated with the instance via the device_id. When the server is unshelved the port binding would be updated to the new host.","commit_id":"08ff2ddb8049d13034bc7294886e3774df74ebaa"}],"nova/compute/manager.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"309af54ca8ace72e0c6ae81cc5ba9f2924dbf5ab","unresolved":false,"context_lines":[{"line_number":6417,"context_line":"        # multiple host bindings per port which is not the case with the"},{"line_number":6418,"context_line":"        # shelve/unshelve flow. Doing so will result in failures to update the"},{"line_number":6419,"context_line":"        # port binding on unshelve (since we would have deleted it here)."},{"line_number":6420,"context_line":"        if not utils.is_neutron():"},{"line_number":6421,"context_line":"            self.network_api.cleanup_instance_network_on_host("},{"line_number":6422,"context_line":"                context, instance, instance.host)"},{"line_number":6423,"context_line":"        network_info \u003d self.network_api.get_instance_nw_info(context, instance)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_e26c9c08","line":6420,"range":{"start_line":6420,"start_character":8,"end_line":6420,"end_character":33},"updated":"2019-12-05 12:33:11.000000000","message":"Is this still a thing? Paging stephenfin... ;)","commit_id":"65f6bf8dec0e3bbf14fb34eaf9bb6614738831fb"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b3f4f72d6ac8c9a7d405ab5495c30c7880d673d8","unresolved":false,"context_lines":[{"line_number":6417,"context_line":"        # multiple host bindings per port which is not the case with the"},{"line_number":6418,"context_line":"        # shelve/unshelve flow. Doing so will result in failures to update the"},{"line_number":6419,"context_line":"        # port binding on unshelve (since we would have deleted it here)."},{"line_number":6420,"context_line":"        if not utils.is_neutron():"},{"line_number":6421,"context_line":"            self.network_api.cleanup_instance_network_on_host("},{"line_number":6422,"context_line":"                context, instance, instance.host)"},{"line_number":6423,"context_line":"        network_info \u003d self.network_api.get_instance_nw_info(context, instance)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_033448fa","line":6420,"range":{"start_line":6420,"start_character":8,"end_line":6420,"end_character":33},"in_reply_to":"3fa7e38b_e26c9c08","updated":"2019-12-05 15:52:01.000000000","message":"Once nova-network is gone we\u0027ll just remove the code here.","commit_id":"65f6bf8dec0e3bbf14fb34eaf9bb6614738831fb"}],"nova/tests/unit/compute/test_shelve.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9f351db913b09ef5c780253e00cb6cd27b750199","unresolved":false,"context_lines":[{"line_number":160,"context_line":"            mock_power_off_call_list.append(mock.call(instance, 0, 0))"},{"line_number":161,"context_line":"            mock_get_power_state_call_list.append(mock.call(self.context,"},{"line_number":162,"context_line":"                                                            instance))"},{"line_number":163,"context_line":"            # instance.host is replaced with host because"},{"line_number":164,"context_line":"            # original instance.host is clear after"},{"line_number":165,"context_line":"            # ComputeManager.shelve_instance execute with"},{"line_number":166,"context_line":"            # shelved_offload_time \u003d\u003d 0"},{"line_number":167,"context_line":"            mock_cleanup_call_list.append(mock.call(self.context, instance,"},{"line_number":168,"context_line":"                                                    host))"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        mock_notify_instance_usage.assert_has_calls("},{"line_number":171,"context_line":"            mock_notify_instance_usage_call_list)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_562a20e6","line":168,"range":{"start_line":163,"start_character":0,"end_line":168,"end_character":58},"updated":"2019-12-20 16:04:38.000000000","message":"Why is this still here if mock_cleanup_call_list isn\u0027t used anywhere?","commit_id":"142bbe5e03877a4072209a44d984ac72db582b51"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c2b23fa3adb5609e05240e922f603137c09aeb3d","unresolved":false,"context_lines":[{"line_number":160,"context_line":"            mock_power_off_call_list.append(mock.call(instance, 0, 0))"},{"line_number":161,"context_line":"            mock_get_power_state_call_list.append(mock.call(self.context,"},{"line_number":162,"context_line":"                                                            instance))"},{"line_number":163,"context_line":"            # instance.host is replaced with host because"},{"line_number":164,"context_line":"            # original instance.host is clear after"},{"line_number":165,"context_line":"            # ComputeManager.shelve_instance execute with"},{"line_number":166,"context_line":"            # shelved_offload_time \u003d\u003d 0"},{"line_number":167,"context_line":"            mock_cleanup_call_list.append(mock.call(self.context, instance,"},{"line_number":168,"context_line":"                                                    host))"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        mock_notify_instance_usage.assert_has_calls("},{"line_number":171,"context_line":"            mock_notify_instance_usage_call_list)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_39b437d4","line":168,"range":{"start_line":163,"start_character":0,"end_line":168,"end_character":58},"in_reply_to":"3fa7e38b_190e1be4","updated":"2019-12-20 16:44:11.000000000","message":"https://review.opendev.org/700202","commit_id":"142bbe5e03877a4072209a44d984ac72db582b51"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c4480c175e93e25adc663322fb0db62e41864075","unresolved":false,"context_lines":[{"line_number":160,"context_line":"            mock_power_off_call_list.append(mock.call(instance, 0, 0))"},{"line_number":161,"context_line":"            mock_get_power_state_call_list.append(mock.call(self.context,"},{"line_number":162,"context_line":"                                                            instance))"},{"line_number":163,"context_line":"            # instance.host is replaced with host because"},{"line_number":164,"context_line":"            # original instance.host is clear after"},{"line_number":165,"context_line":"            # ComputeManager.shelve_instance execute with"},{"line_number":166,"context_line":"            # shelved_offload_time \u003d\u003d 0"},{"line_number":167,"context_line":"            mock_cleanup_call_list.append(mock.call(self.context, instance,"},{"line_number":168,"context_line":"                                                    host))"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        mock_notify_instance_usage.assert_has_calls("},{"line_number":171,"context_line":"            mock_notify_instance_usage_call_list)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_190e1be4","line":168,"range":{"start_line":163,"start_character":0,"end_line":168,"end_character":58},"in_reply_to":"3fa7e38b_562a20e6","updated":"2019-12-20 16:36:25.000000000","message":"Because I missed it. I\u0027d prefer to fix this in a follow up if it\u0027s OK with you since I have several +2ed changes stacked on top of this.","commit_id":"142bbe5e03877a4072209a44d984ac72db582b51"}]}
