)]}'
{"tempest/api/image/v2/test_images.py":[{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"93d0bb37b542cf94edecb4840d574e3ff745e036","unresolved":true,"context_lines":[{"line_number":217,"context_line":"        waiters.wait_for_image_imported_to_stores(self.client, image[\u0027id\u0027],"},{"line_number":218,"context_line":"                                                  (\u0027,\u0027.join(stores)))"},{"line_number":219,"context_line":""},{"line_number":220,"context_line":"        self.client.delete_from_store(image[\u0027id\u0027], stores[1])"},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"        # Verifying image deleted from store"},{"line_number":223,"context_line":"        body \u003d self.client.show_image(image[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"55a0b5bf_3efab37f","line":220,"range":{"start_line":220,"start_character":51,"end_line":220,"end_character":60},"updated":"2020-12-16 05:27:35.000000000","message":"As you are passing all_stores \u003d True at line 213 stores here will be a single string of comma separated available stores (refer line #168). So stores[1] at line 220 will just be the one character which will cause this test to fail.\n\nIMO you need to pass it here like;\nstore \u003d stores.split(\",\")[1]\nand then pass store at line 220","commit_id":"7f5c824121622563b798a556beb2bb076ea546a8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"9764a30ddbb4c4fd9272d33d09271f624f4c6e3f","unresolved":false,"context_lines":[{"line_number":217,"context_line":"        waiters.wait_for_image_imported_to_stores(self.client, image[\u0027id\u0027],"},{"line_number":218,"context_line":"                                                  (\u0027,\u0027.join(stores)))"},{"line_number":219,"context_line":""},{"line_number":220,"context_line":"        self.client.delete_from_store(image[\u0027id\u0027], stores[1])"},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"        # Verifying image deleted from store"},{"line_number":223,"context_line":"        body \u003d self.client.show_image(image[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f621f24_e19ca36b","line":220,"range":{"start_line":220,"start_character":0,"end_line":220,"end_character":61},"updated":"2020-11-09 19:29:08.000000000","message":"is delete from store too is async task? if so then we need to wait for deletion first before asserting on the store to be removed from images stores.","commit_id":"7f5c824121622563b798a556beb2bb076ea546a8"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"93d0bb37b542cf94edecb4840d574e3ff745e036","unresolved":false,"context_lines":[{"line_number":217,"context_line":"        waiters.wait_for_image_imported_to_stores(self.client, image[\u0027id\u0027],"},{"line_number":218,"context_line":"                                                  (\u0027,\u0027.join(stores)))"},{"line_number":219,"context_line":""},{"line_number":220,"context_line":"        self.client.delete_from_store(image[\u0027id\u0027], stores[1])"},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"        # Verifying image deleted from store"},{"line_number":223,"context_line":"        body \u003d self.client.show_image(image[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"078d8b55_45f5a702","line":220,"range":{"start_line":220,"start_character":0,"end_line":220,"end_character":61},"in_reply_to":"1f621f24_e19ca36b","updated":"2020-12-16 05:27:35.000000000","message":"it\u0027s not a task, it first marks the image deleted from the db and then deletes it from backend.","commit_id":"7f5c824121622563b798a556beb2bb076ea546a8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f065d774adb5216c50eb51c10f50d3ab3e775d66","unresolved":true,"context_lines":[{"line_number":165,"context_line":"        self.assertEqual(\u0027uploading\u0027, body[\u0027status\u0027])"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"        if all_stores:"},{"line_number":168,"context_line":"            stores_list \u003d \u0027,\u0027.join([store[\u0027id\u0027]"},{"line_number":169,"context_line":"                                    for store in self.available_stores])"},{"line_number":170,"context_line":"        else:"},{"line_number":171,"context_line":"            stores \u003d [store[\u0027id\u0027] for store in self.available_stores]"},{"line_number":172,"context_line":"            stores_list \u003d stores[::len(stores) - 1]"}],"source_content_type":"text/x-python","patch_set":3,"id":"e0c29a66_fa5470b6","line":169,"range":{"start_line":168,"start_character":26,"end_line":169,"end_character":72},"updated":"2021-02-18 18:13:27.000000000","message":"and this is culprit where in case of all_stores, this is not preparing the list instead it prepare store as string like \"lvmdriver-1,lvmdriver-2\".\n\nwe can just do \n\nstores_list  \u003d [store[\u0027id\u0027] for store in self.available_stores]","commit_id":"c5e6a98c12449241c9f64c455dfe811603309040"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f065d774adb5216c50eb51c10f50d3ab3e775d66","unresolved":true,"context_lines":[{"line_number":211,"context_line":"        specific store and verify image is deleted from the store."},{"line_number":212,"context_line":"        \"\"\""},{"line_number":213,"context_line":"        image, stores \u003d self._create_and_stage_image(all_stores\u003dTrue)"},{"line_number":214,"context_line":"        self.client.image_import(image[\u0027id\u0027], method\u003d\u0027glance-direct\u0027,"},{"line_number":215,"context_line":"                                 stores\u003dstores)"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"        waiters.wait_for_image_imported_to_stores(self.client, image[\u0027id\u0027],"},{"line_number":218,"context_line":"                                                  (\u0027,\u0027.join(stores)))"}],"source_content_type":"text/x-python","patch_set":3,"id":"6f1ad7fb_c54f35b1","line":215,"range":{"start_line":214,"start_character":0,"end_line":215,"end_character":47},"updated":"2021-02-18 18:13:27.000000000","message":"this fail as it cannot identify the store - https://zuul.opendev.org/t/openstack/build/9a5ce60106674d1a9d5c3101ca9b1c4d/log/controller/logs/screen-g-api.txt#10281\n\nas you are passing store as \"stores\": \"lvmdriver-1,lvmdriver-2\"\n\n- https://zuul.opendev.org/t/openstack/build/9a5ce60106674d1a9d5c3101ca9b1c4d/log/controller/logs/tempest_log.txt#34084","commit_id":"c5e6a98c12449241c9f64c455dfe811603309040"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f065d774adb5216c50eb51c10f50d3ab3e775d66","unresolved":true,"context_lines":[{"line_number":221,"context_line":""},{"line_number":222,"context_line":"        # Verifying image deleted from store"},{"line_number":223,"context_line":"        body \u003d self.client.show_image(image[\u0027id\u0027])"},{"line_number":224,"context_line":"        self.assertNotIn(stores[1], body[\u0027stores\u0027])"},{"line_number":225,"context_line":"        self.assertNotEqual(len(stores), len(body[\u0027stores\u0027]))"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"eb83f689_919d6493","line":224,"range":{"start_line":224,"start_character":25,"end_line":224,"end_character":36},"updated":"2021-02-18 18:13:27.000000000","message":"this will be \u0027v\u0027 not the full store name. you need to change this also to stores.split(\",\")[1]\n\ndo store \u003d stores.split(\",\")[1] at L219 and then pass store while deleting or asserting.","commit_id":"c5e6a98c12449241c9f64c455dfe811603309040"}]}
