)]}'
{"nova/tests/functional/compute/test_live_migration.py":[{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"0e56d7324d933bf228aba583cd126106d28dee40","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        self.compute2 \u003d self.start_service(\u0027compute\u0027, host\u003d\u0027host2\u0027)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    def test_live_migrate_get_nw_info_fails(self):"},{"line_number":52,"context_line":"        server \u003d self._create_server(networks\u003d\u0027auto\u0027)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        source_mgr \u003d (self.compute.manager"},{"line_number":55,"context_line":"                      if self.compute.host \u003d\u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_f604194c","line":52,"range":{"start_line":52,"start_character":8,"end_line":52,"end_character":53},"updated":"2020-07-15 19:28:13.000000000","message":"You can just force the instance to a given host with:\n\n  server \u003d self._create_server(networks\u003d\u0027auto\u0027, host\u003d\u0027compute\u0027,\n                               api\u003dself.admin_api)","commit_id":"2fc806b56f4349b7d00248b0d5cd1a2e493f99f4"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8f0df4eceffef063745cf1f6afbfce212aff9959","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        self.compute2 \u003d self.start_service(\u0027compute\u0027, host\u003d\u0027host2\u0027)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    def test_live_migrate_get_nw_info_fails(self):"},{"line_number":52,"context_line":"        server \u003d self._create_server(networks\u003d\u0027auto\u0027)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        source_mgr \u003d (self.compute.manager"},{"line_number":55,"context_line":"                      if self.compute.host \u003d\u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_25992b1e","line":52,"range":{"start_line":52,"start_character":8,"end_line":52,"end_character":53},"in_reply_to":"bf51134e_f604194c","updated":"2020-07-16 14:36:20.000000000","message":"Done","commit_id":"2fc806b56f4349b7d00248b0d5cd1a2e493f99f4"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"0e56d7324d933bf228aba583cd126106d28dee40","unresolved":false,"context_lines":[{"line_number":51,"context_line":"    def test_live_migrate_get_nw_info_fails(self):"},{"line_number":52,"context_line":"        server \u003d self._create_server(networks\u003d\u0027auto\u0027)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        source_mgr \u003d (self.compute.manager"},{"line_number":55,"context_line":"                      if self.compute.host \u003d\u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":56,"context_line":"                      else self.compute2.manager)"},{"line_number":57,"context_line":"        orig_plm \u003d source_mgr._post_live_migration"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        def stub_plm(*args, **kwargs):"},{"line_number":60,"context_line":"            with mock.patch.object(source_mgr.network_api,"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_16f6ed5d","line":57,"range":{"start_line":54,"start_character":8,"end_line":57,"end_character":50},"updated":"2020-07-15 19:28:13.000000000","message":"With the above this then becomes:\n\n    orig_plm \u003d self.compute.manager._post_live_migration","commit_id":"2fc806b56f4349b7d00248b0d5cd1a2e493f99f4"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8f0df4eceffef063745cf1f6afbfce212aff9959","unresolved":false,"context_lines":[{"line_number":51,"context_line":"    def test_live_migrate_get_nw_info_fails(self):"},{"line_number":52,"context_line":"        server \u003d self._create_server(networks\u003d\u0027auto\u0027)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        source_mgr \u003d (self.compute.manager"},{"line_number":55,"context_line":"                      if self.compute.host \u003d\u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":56,"context_line":"                      else self.compute2.manager)"},{"line_number":57,"context_line":"        orig_plm \u003d source_mgr._post_live_migration"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        def stub_plm(*args, **kwargs):"},{"line_number":60,"context_line":"            with mock.patch.object(source_mgr.network_api,"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_859c770e","line":57,"range":{"start_line":54,"start_character":8,"end_line":57,"end_character":50},"in_reply_to":"bf51134e_16f6ed5d","updated":"2020-07-16 14:36:20.000000000","message":"Done","commit_id":"2fc806b56f4349b7d00248b0d5cd1a2e493f99f4"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"18c7ce2d15777cf19acbe8a68c6f5b58178d7320","unresolved":false,"context_lines":[{"line_number":190,"context_line":"    # NOTE(artom) We need the admin API to force the host when booting the test"},{"line_number":191,"context_line":"    # server."},{"line_number":192,"context_line":"    ADMIN_API \u003d True"},{"line_number":193,"context_line":"    api_major_version \u003d \u0027v2.1\u0027"},{"line_number":194,"context_line":"    microversion \u003d \u0027latest\u0027"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_968d547d","line":193,"range":{"start_line":193,"start_character":0,"end_line":193,"end_character":30},"updated":"2020-07-31 13:17:57.000000000","message":"supernit - this isn\u0027t required anymore.","commit_id":"53a45535aed41f4126e103050f4d92e1f72ca9cd"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"1f011add84a7acbd6307df7930d806e68a5e6635","unresolved":false,"context_lines":[{"line_number":190,"context_line":"    # NOTE(artom) We need the admin API to force the host when booting the test"},{"line_number":191,"context_line":"    # server."},{"line_number":192,"context_line":"    ADMIN_API \u003d True"},{"line_number":193,"context_line":"    api_major_version \u003d \u0027v2.1\u0027"},{"line_number":194,"context_line":"    microversion \u003d \u0027latest\u0027"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_16602432","line":193,"range":{"start_line":193,"start_character":0,"end_line":193,"end_character":30},"in_reply_to":"9f560f44_968d547d","updated":"2020-07-31 13:39:49.000000000","message":"Done","commit_id":"53a45535aed41f4126e103050f4d92e1f72ca9cd"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"18c7ce2d15777cf19acbe8a68c6f5b58178d7320","unresolved":false,"context_lines":[{"line_number":197,"context_line":"        super(LiveMigrationNeutronFailure, self).setUp()"},{"line_number":198,"context_line":"        self.compute2 \u003d self.start_service(\u0027compute\u0027, host\u003d\u0027host2\u0027)"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"    def test_live_migrate_get_nw_info_fails(self):"},{"line_number":201,"context_line":"        server \u003d self._create_server(networks\u003d\u0027auto\u0027, host\u003dself.compute.host)"},{"line_number":202,"context_line":"        orig_plm \u003d self.compute.manager._post_live_migration"},{"line_number":203,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_b655f8c8","line":200,"range":{"start_line":200,"start_character":0,"end_line":200,"end_character":50},"updated":"2020-07-31 13:17:57.000000000","message":"supernit - I know it\u0027s pretty straight forward but a quick comment outlining what the test is doing would be useful.","commit_id":"53a45535aed41f4126e103050f4d92e1f72ca9cd"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"1f011add84a7acbd6307df7930d806e68a5e6635","unresolved":false,"context_lines":[{"line_number":197,"context_line":"        super(LiveMigrationNeutronFailure, self).setUp()"},{"line_number":198,"context_line":"        self.compute2 \u003d self.start_service(\u0027compute\u0027, host\u003d\u0027host2\u0027)"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"    def test_live_migrate_get_nw_info_fails(self):"},{"line_number":201,"context_line":"        server \u003d self._create_server(networks\u003d\u0027auto\u0027, host\u003dself.compute.host)"},{"line_number":202,"context_line":"        orig_plm \u003d self.compute.manager._post_live_migration"},{"line_number":203,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_7656c05e","line":200,"range":{"start_line":200,"start_character":0,"end_line":200,"end_character":50},"in_reply_to":"9f560f44_b655f8c8","updated":"2020-07-31 13:39:49.000000000","message":"Done","commit_id":"53a45535aed41f4126e103050f4d92e1f72ca9cd"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"c2b318a2440131993556504d970d1982eb8517ca","unresolved":false,"context_lines":[{"line_number":185,"context_line":""},{"line_number":186,"context_line":"    def setUp(self):"},{"line_number":187,"context_line":"        super(LiveMigrationNeutronFailure, self).setUp()"},{"line_number":188,"context_line":"        self.compute2 \u003d self.start_service(\u0027compute\u0027, host\u003d\u0027host2\u0027)"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"    def test_live_migrate_get_nw_info_fails(self):"},{"line_number":191,"context_line":"        \"\"\"Test that if the driver.post_live_migration() call fails (for"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_c1026809","line":188,"updated":"2020-07-31 13:49:02.000000000","message":"Can you move this to \u0027self._setup_compute_service\u0027 like lyarwood did here [1]?\n\n[1] https://review.opendev.org/#/c/743289/5/nova/tests/functional/regressions/test_bug_1889108.py@38","commit_id":"9ad201082eaf42bbbb98bed8ddf2bc10aa398b85"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"bd68c6d7c35d11f5f3b18bbacdbc5d7b1e9b3323","unresolved":false,"context_lines":[{"line_number":185,"context_line":""},{"line_number":186,"context_line":"    def setUp(self):"},{"line_number":187,"context_line":"        super(LiveMigrationNeutronFailure, self).setUp()"},{"line_number":188,"context_line":"        self.compute2 \u003d self.start_service(\u0027compute\u0027, host\u003d\u0027host2\u0027)"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"    def test_live_migrate_get_nw_info_fails(self):"},{"line_number":191,"context_line":"        \"\"\"Test that if the driver.post_live_migration() call fails (for"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_418498b1","line":188,"in_reply_to":"9f560f44_c1026809","updated":"2020-07-31 15:10:02.000000000","message":"Done","commit_id":"9ad201082eaf42bbbb98bed8ddf2bc10aa398b85"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"84ae8c450ce480a468cde6efb6c69be2b096bcc9","unresolved":false,"context_lines":[{"line_number":196,"context_line":"        server \u003d self._create_server(networks\u003d\u0027auto\u0027, host\u003dself.compute.host)"},{"line_number":197,"context_line":"        orig_plm \u003d self.compute.manager._post_live_migration"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"        def stub_plm(*args, **kwargs):"},{"line_number":200,"context_line":"            with mock.patch.object(self.compute.manager.network_api,"},{"line_number":201,"context_line":"                                   \u0027get_instance_nw_info\u0027,"},{"line_number":202,"context_line":"                                   side_effect\u003dConnectionError):"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_9c93b3fa","line":199,"updated":"2020-07-31 15:10:55.000000000","message":"I\u0027ll add a docstring here as well - the \"top level\" docstring doesn\u0027t actually add much, the potentially tricky logic is in here.","commit_id":"9ad201082eaf42bbbb98bed8ddf2bc10aa398b85"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"84ae8c450ce480a468cde6efb6c69be2b096bcc9","unresolved":false,"context_lines":[{"line_number":205,"context_line":"        with mock.patch.object(self.compute.manager, \u0027_post_live_migration\u0027,"},{"line_number":206,"context_line":"                               side_effect\u003dstub_plm):"},{"line_number":207,"context_line":"            # FIXME(artom) Until bug 1879787 is fixed, the raised"},{"line_number":208,"context_line":"            # ConnectionError will go unhandled, and the migration will fail."},{"line_number":209,"context_line":"            self._live_migrate(server, \u0027error\u0027, server_expected_state\u003d\u0027ERROR\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_5c891bc8","line":208,"updated":"2020-07-31 15:10:55.000000000","message":"We should probably assert that the instance is still on the source here.","commit_id":"9ad201082eaf42bbbb98bed8ddf2bc10aa398b85"}],"nova/tests/functional/integrated_helpers.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"4430211d9fba583b040b3cd23f322e2805ba935a","unresolved":false,"context_lines":[{"line_number":433,"context_line":"        self._migrate_or_resize(server, resize_req)"},{"line_number":434,"context_line":""},{"line_number":435,"context_line":"    def _live_migrate(self, server, migration_final_status,"},{"line_number":436,"context_line":"                      server_final_status\u003d\u0027ACTIVE\u0027):"},{"line_number":437,"context_line":"        self.api.post_server_action("},{"line_number":438,"context_line":"            server[\u0027id\u0027],"},{"line_number":439,"context_line":"            {\u0027os-migrateLive\u0027: {\u0027host\u0027: None,"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_9f00be02","line":436,"range":{"start_line":436,"start_character":22,"end_line":436,"end_character":41},"updated":"2020-07-24 12:01:34.000000000","message":"I know this is a nit that probably doesn\u0027t warrant blocking, but can we please call this \u0027expected_state\u0027 like \u0027_create_server\u0027 above and the various helpers I\u0027ve proposed at https://review.opendev.org/#/c/741285/ ?","commit_id":"47997c296e58e08c96215064d9b6d3fb9869d8bf"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"7fd8fd3daade22718ad90a4e66de85ed0885b2ee","unresolved":false,"context_lines":[{"line_number":433,"context_line":"        self._migrate_or_resize(server, resize_req)"},{"line_number":434,"context_line":""},{"line_number":435,"context_line":"    def _live_migrate(self, server, migration_final_status,"},{"line_number":436,"context_line":"                      server_final_status\u003d\u0027ACTIVE\u0027):"},{"line_number":437,"context_line":"        self.api.post_server_action("},{"line_number":438,"context_line":"            server[\u0027id\u0027],"},{"line_number":439,"context_line":"            {\u0027os-migrateLive\u0027: {\u0027host\u0027: None,"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_da852409","line":436,"range":{"start_line":436,"start_character":22,"end_line":436,"end_character":41},"in_reply_to":"bf51134e_9f00be02","updated":"2020-07-24 14:07:24.000000000","message":"Nah, legit nit. (lenit?) Done. We should probably rename migration_final_status to migration_expected_status, too then.","commit_id":"47997c296e58e08c96215064d9b6d3fb9869d8bf"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"18c7ce2d15777cf19acbe8a68c6f5b58178d7320","unresolved":false,"context_lines":[{"line_number":430,"context_line":"        }"},{"line_number":431,"context_line":"        self._migrate_or_resize(server, resize_req)"},{"line_number":432,"context_line":""},{"line_number":433,"context_line":"    def _live_migrate(self, server, migration_final_status,"},{"line_number":434,"context_line":"                      server_expected_state\u003d\u0027ACTIVE\u0027):"},{"line_number":435,"context_line":"        self.api.post_server_action("},{"line_number":436,"context_line":"            server[\u0027id\u0027],"},{"line_number":437,"context_line":"            {\u0027os-migrateLive\u0027: {\u0027host\u0027: None,"},{"line_number":438,"context_line":"                                \u0027block_migration\u0027: \u0027auto\u0027}})"},{"line_number":439,"context_line":"        self._wait_for_state_change(server, server_expected_state)"},{"line_number":440,"context_line":"        self._wait_for_migration_status(server, [migration_final_status])"},{"line_number":441,"context_line":""},{"line_number":442,"context_line":""},{"line_number":443,"context_line":"class PlacementHelperMixin:"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_f6d2d05b","line":440,"range":{"start_line":433,"start_character":0,"end_line":440,"end_character":73},"updated":"2020-07-31 13:17:57.000000000","message":"Ie0852a89fc9423a92baa7c29a8806c0628cae220 great minds and all that. Could you rebase on that?","commit_id":"53a45535aed41f4126e103050f4d92e1f72ca9cd"}]}
