)]}'
{"nova/tests/functional/notification_sample_tests/test_instance.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"57a892f72a49b8e9bf6ace8c678d976222e18964","unresolved":false,"context_lines":[{"line_number":88,"context_line":"                \u0027uuid\u0027: server[\u0027id\u0027]},"},{"line_number":89,"context_line":"            actual\u003dfake_notifier.VERSIONED_NOTIFICATIONS[1])"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    @mock.patch(\u0027nova.virt.fake.FakeDriver.live_migration\u0027)"},{"line_number":92,"context_line":"    def _test_live_migration_abort(self, server, mock_migration):"},{"line_number":93,"context_line":"        post \u003d {"},{"line_number":94,"context_line":"            \"os-migrateLive\": {"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_d50ee839","line":91,"updated":"2017-11-14 16:18:59.000000000","message":"You don\u0027t need this mock any more.","commit_id":"65d15a9e504090b84ae9ea722ca041f5e26b6057"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"bf80f7279050f220713fb66d41373201f5b88f5d","unresolved":false,"context_lines":[{"line_number":88,"context_line":"                \u0027uuid\u0027: server[\u0027id\u0027]},"},{"line_number":89,"context_line":"            actual\u003dfake_notifier.VERSIONED_NOTIFICATIONS[1])"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    @mock.patch(\u0027nova.virt.fake.FakeDriver.live_migration\u0027)"},{"line_number":92,"context_line":"    def _test_live_migration_abort(self, server, mock_migration):"},{"line_number":93,"context_line":"        post \u003d {"},{"line_number":94,"context_line":"            \"os-migrateLive\": {"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_e3b24e94","line":91,"in_reply_to":"1f485f77_d50ee839","updated":"2017-11-14 17:35:20.000000000","message":"Ooops, nice catch. Thanks, Done.","commit_id":"65d15a9e504090b84ae9ea722ca041f5e26b6057"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"2f493c6fb34f32099375591e02f39f9c9279862e","unresolved":false,"context_lines":[{"line_number":119,"context_line":"                \u0027reservation_id\u0027: server[\u0027reservation_id\u0027],"},{"line_number":120,"context_line":"                \u0027uuid\u0027: server[\u0027id\u0027]},"},{"line_number":121,"context_line":"            actual\u003dfake_notifier.VERSIONED_NOTIFICATIONS[1])"},{"line_number":122,"context_line":"        self._verify_notification("},{"line_number":123,"context_line":"            \u0027instance-live_migration_rollback-start\u0027,"},{"line_number":124,"context_line":"            replacements\u003d{"},{"line_number":125,"context_line":"                \u0027reservation_id\u0027: server[\u0027reservation_id\u0027],"},{"line_number":126,"context_line":"                \u0027uuid\u0027: server[\u0027id\u0027]},"},{"line_number":127,"context_line":"            actual\u003dfake_notifier.VERSIONED_NOTIFICATIONS[2])"},{"line_number":128,"context_line":"        self._verify_notification("},{"line_number":129,"context_line":"            \u0027instance-live_migration_rollback-end\u0027,"},{"line_number":130,"context_line":"            replacements\u003d{"},{"line_number":131,"context_line":"                \u0027reservation_id\u0027: server[\u0027reservation_id\u0027],"},{"line_number":132,"context_line":"                \u0027uuid\u0027: server[\u0027id\u0027]},"},{"line_number":133,"context_line":"            actual\u003dfake_notifier.VERSIONED_NOTIFICATIONS[3])"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"class TestInstanceNotificationSample("}],"source_content_type":"text/x-python","patch_set":2,"id":"ff82abbf_ae2eb9a2","line":133,"range":{"start_line":122,"start_character":8,"end_line":133,"end_character":60},"updated":"2017-11-22 14:43:09.000000000","message":"OK these show up now because _delayed_live_migration was calling post_method instead of recover_method which is actually what the abort would do:\n\nhttps://github.com/openstack/nova/blob/f69d98ea744bc13189b17ba4c67e4f0279d2f45a/nova/virt/libvirt/driver.py#L6662\n\nWould have been good to explain this in the commit message.","commit_id":"f6ac68b9afa38bc40115c789ac7a9040d7364d34"}]}
