)]}'
{"tempest/api/compute/admin/test_live_migration.py":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"242dae7dab79f2ca7c83b4841a06acb46f1808dc","unresolved":false,"context_lines":[{"line_number":60,"context_line":"        # the original client version or subsequent client operations"},{"line_number":61,"context_line":"        # may fail on a version check with InvalidHTTPResponseHeader."},{"line_number":62,"context_line":"        save_version \u003d volume_base_client.VOLUME_MICROVERSION"},{"line_number":63,"context_line":"        volume_base_client.VOLUME_MICROVERSION \u003d \u00273.27\u0027"},{"line_number":64,"context_line":"        attachments \u003d self.volume_attachments_client.list_attachments()"},{"line_number":65,"context_line":"        volume_base_client.VOLUME_MICROVERSION \u003d save_version"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff346bd7_372037ac","line":63,"range":{"start_line":63,"start_character":8,"end_line":63,"end_character":55},"updated":"2017-07-28 06:24:03.000000000","message":"maybe currently you can put the testcase in volume folder, so you can set min_microversion in testclass","commit_id":"d14fe3a763d68a591a7976b3b8504cda9c8c317d"},{"author":{"_account_id":17386,"name":"Steve Noyes","email":"steve.noyes@oracle.com","username":"ssn1ssn"},"change_message_id":"6f7858618a87b679ec5f98ba32690e18f908882f","unresolved":false,"context_lines":[{"line_number":60,"context_line":"        # the original client version or subsequent client operations"},{"line_number":61,"context_line":"        # may fail on a version check with InvalidHTTPResponseHeader."},{"line_number":62,"context_line":"        save_version \u003d volume_base_client.VOLUME_MICROVERSION"},{"line_number":63,"context_line":"        volume_base_client.VOLUME_MICROVERSION \u003d \u00273.27\u0027"},{"line_number":64,"context_line":"        attachments \u003d self.volume_attachments_client.list_attachments()"},{"line_number":65,"context_line":"        volume_base_client.VOLUME_MICROVERSION \u003d save_version"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff346bd7_dd890175","line":63,"range":{"start_line":63,"start_character":8,"end_line":63,"end_character":55},"in_reply_to":"ff346bd7_372037ac","updated":"2017-07-28 14:27:23.000000000","message":"I considered that but felt it was simpler (and didn\u0027t add to the test run time) to piggy-back on an already existing live-migrate with attached volume test.","commit_id":"d14fe3a763d68a591a7976b3b8504cda9c8c317d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8974d8abacf5e20e2394a99d7fc8a441d91bd2e0","unresolved":false,"context_lines":[{"line_number":152,"context_line":"    @testtools.skipIf(not CONF.compute_feature_enabled."},{"line_number":153,"context_line":"                      block_migrate_cinder_iscsi,"},{"line_number":154,"context_line":"                      \u0027Block Live migration not configured for iSCSI\u0027)"},{"line_number":155,"context_line":"    def test_iscsi_volume(self):"},{"line_number":156,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":157,"context_line":"        server_id \u003d server[\u0027id\u0027]"},{"line_number":158,"context_line":"        target_host \u003d self.get_host_other_than(server_id)"}],"source_content_type":"text/x-python","patch_set":7,"id":"7f287b81_9604b016","line":155,"range":{"start_line":155,"start_character":8,"end_line":155,"end_character":25},"updated":"2017-09-07 16:15:49.000000000","message":"Note that we don\u0027t currently test this anywhere as far as I know. I\u0027ve tried enabling it in the nova live migration job but it still randomly fails:\n\nhttps://review.openstack.org/#/c/459316/","commit_id":"a21da7449172ebce1660c2c5474ed7b415981da6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a34e4ed413d96fce807375618eb1f10a09a8b2fa","unresolved":false,"context_lines":[{"line_number":152,"context_line":"    @testtools.skipIf(not CONF.compute_feature_enabled."},{"line_number":153,"context_line":"                      block_migrate_cinder_iscsi,"},{"line_number":154,"context_line":"                      \u0027Block Live migration not configured for iSCSI\u0027)"},{"line_number":155,"context_line":"    def test_iscsi_volume(self):"},{"line_number":156,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":157,"context_line":"        server_id \u003d server[\u0027id\u0027]"},{"line_number":158,"context_line":"        target_host \u003d self.get_host_other_than(server_id)"}],"source_content_type":"text/x-python","patch_set":7,"id":"7f287b81_f62ad48e","line":155,"range":{"start_line":155,"start_character":8,"end_line":155,"end_character":25},"in_reply_to":"7f287b81_9604b016","updated":"2017-09-07 16:46:12.000000000","message":"Testing this change here: https://review.openstack.org/#/c/501805/","commit_id":"a21da7449172ebce1660c2c5474ed7b415981da6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"44c64524a5e10e218ea5d279c458737dc56195cb","unresolved":false,"context_lines":[{"line_number":182,"context_line":"        # check that the original attachments have been deleted"},{"line_number":183,"context_line":"        all_attachments \u003d self._get_attachment_ids()"},{"line_number":184,"context_line":"        for orig_attachment in orig_attachments:"},{"line_number":185,"context_line":"            self.assertNotIn(orig_attachment, all_attachments)"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"class LiveMigrationRemoteConsolesV26Test(LiveMigrationTest):"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f5c4f37_96831b05","line":185,"updated":"2017-09-21 15:52:16.000000000","message":"This is failing the new style attach flow with live migration in a grenade setup, meaning one compute is pike and one is queens:\n\nhttp://logs.openstack.org/90/481290/6/check/gate-grenade-dsvm-neutron-multinode-live-migration-nv/d8962cc/console.html#_2017-09-17_04_21_05_125937\n\nDoes this depend on all computes being queens for some reason?","commit_id":"a21da7449172ebce1660c2c5474ed7b415981da6"},{"author":{"_account_id":17386,"name":"Steve Noyes","email":"steve.noyes@oracle.com","username":"ssn1ssn"},"change_message_id":"e26ea8b89cad8b1ca0c9f125bd65bf78bf157a01","unresolved":false,"context_lines":[{"line_number":182,"context_line":"        # check that the original attachments have been deleted"},{"line_number":183,"context_line":"        all_attachments \u003d self._get_attachment_ids()"},{"line_number":184,"context_line":"        for orig_attachment in orig_attachments:"},{"line_number":185,"context_line":"            self.assertNotIn(orig_attachment, all_attachments)"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"class LiveMigrationRemoteConsolesV26Test(LiveMigrationTest):"}],"source_content_type":"text/x-python","patch_set":7,"id":"7f515b1d_650d8736","line":185,"in_reply_to":"9f5c4f37_96831b05","updated":"2017-09-22 15:44:26.000000000","message":"This is definitely a test issue. In this case the instance creation and attachment occur on a pike host and then the instance is live migrated to a queens host. Thus the old live migration flow is used. The test is assuming that the migration flow was always using the new flow.\n\nI need to be able to handle both scenarios to cover the grenade case.","commit_id":"a21da7449172ebce1660c2c5474ed7b415981da6"}],"tempest/lib/services/volume/v3/attachments_client.py":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"242dae7dab79f2ca7c83b4841a06acb46f1808dc","unresolved":false,"context_lines":[{"line_number":38,"context_line":"    def list_attachments(self, detail\u003dFalse, params\u003dNone):"},{"line_number":39,"context_line":"        \"\"\"List all the attachments created."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        Params can be a string (must be urlencoded) or a dictionary."},{"line_number":42,"context_line":"        For a full list of available parameters, please refer to the official"},{"line_number":43,"context_line":"        API reference:"},{"line_number":44,"context_line":"        http://developer.openstack.org/api-ref/block-storage/v3/#list-attachments-with-details"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff346bd7_17d093c8","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":68},"updated":"2017-07-28 06:24:03.000000000","message":"Why we need to support both urlencoded string and dictionary? It seems we can just use **kwargs, and so we\ncan remove _prepare_params","commit_id":"d14fe3a763d68a591a7976b3b8504cda9c8c317d"},{"author":{"_account_id":17386,"name":"Steve Noyes","email":"steve.noyes@oracle.com","username":"ssn1ssn"},"change_message_id":"6f7858618a87b679ec5f98ba32690e18f908882f","unresolved":false,"context_lines":[{"line_number":38,"context_line":"    def list_attachments(self, detail\u003dFalse, params\u003dNone):"},{"line_number":39,"context_line":"        \"\"\"List all the attachments created."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        Params can be a string (must be urlencoded) or a dictionary."},{"line_number":42,"context_line":"        For a full list of available parameters, please refer to the official"},{"line_number":43,"context_line":"        API reference:"},{"line_number":44,"context_line":"        http://developer.openstack.org/api-ref/block-storage/v3/#list-attachments-with-details"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff346bd7_b7e89c7b","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":68},"in_reply_to":"ff346bd7_17d093c8","updated":"2017-07-28 14:27:23.000000000","message":"This was a cut \u0026 paste from lib/services/volume/v2/volumes_client \u003e list_volumes(). But since we\u0027re in compute, I see now that list_servers is done as you suggested. I will change over to that.","commit_id":"d14fe3a763d68a591a7976b3b8504cda9c8c317d"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"6fed674f052bbb409de2232dbd2ca4a0719662c7","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        if params:"},{"line_number":40,"context_line":"            url +\u003d \u0027?%s\u0027 % urllib.urlencode(params)"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        resp, body \u003d self.get(url, )"},{"line_number":43,"context_line":"        body \u003d json.loads(body)"},{"line_number":44,"context_line":"        self.expected_success(200, resp.status)"},{"line_number":45,"context_line":"        return rest_client.ResponseBody(resp, body)"}],"source_content_type":"text/x-python","patch_set":6,"id":"7f287b81_200ca0a3","line":42,"updated":"2017-09-07 07:13:37.000000000","message":"The comma after \u0027url\u0027 can be removed.","commit_id":"1f336f351b3f8795ebff9a962b49384c100607b8"}]}
