)]}'
{"tempest/api/compute/images/test_images.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"d368e7d0be033a014f70f3d85d2df6bfb5844a27","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        self.client.delete_image(image[\u0027id\u0027])"},{"line_number":52,"context_line":"        msg \u003d (\u0027The image with ID {image_id} failed to be deleted\u0027"},{"line_number":53,"context_line":"               .format(image_id\u003dimage[\u0027id\u0027]))"},{"line_number":54,"context_line":"        self.assertTrue(self.client.is_resource_deleted(image[\u0027id\u0027]), msg)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @test.idempotent_id(\u0027aaacd1d0-55a2-4ce8-818a-b5439df8adc9\u0027)"},{"line_number":57,"context_line":"    def test_create_image_from_stopped_server(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_908a15be","line":54,"updated":"2016-07-19 08:30:42.000000000","message":"Is the delete operation synchronous ? (i.e blocking). Is there a \"deleting\" state for an image that could last several seconds ?","commit_id":"43147c6c0b3ca1841f28f4e0284a269d7fe99b6b"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"29e1f70fae8777daf070bdcc9f77ff4264c08d50","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        self.client.delete_image(image[\u0027id\u0027])"},{"line_number":52,"context_line":"        msg \u003d (\u0027The image with ID {image_id} failed to be deleted\u0027"},{"line_number":53,"context_line":"               .format(image_id\u003dimage[\u0027id\u0027]))"},{"line_number":54,"context_line":"        self.assertTrue(self.client.is_resource_deleted(image[\u0027id\u0027]), msg)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @test.idempotent_id(\u0027aaacd1d0-55a2-4ce8-818a-b5439df8adc9\u0027)"},{"line_number":57,"context_line":"    def test_create_image_from_stopped_server(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_fd8c3637","line":54,"in_reply_to":"7ac969e8_d5ce86b3","updated":"2016-08-15 08:57:53.000000000","message":"glance has CONF.delayed_delete which may makes image as pending_delete but from user point of view it is non recoverable so always 404. \n\nSo this looks fine to me also.","commit_id":"43147c6c0b3ca1841f28f4e0284a269d7fe99b6b"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"95651b6298ec07ce1c9de00fab51bb6f9d8abbfe","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        self.client.delete_image(image[\u0027id\u0027])"},{"line_number":52,"context_line":"        msg \u003d (\u0027The image with ID {image_id} failed to be deleted\u0027"},{"line_number":53,"context_line":"               .format(image_id\u003dimage[\u0027id\u0027]))"},{"line_number":54,"context_line":"        self.assertTrue(self.client.is_resource_deleted(image[\u0027id\u0027]), msg)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @test.idempotent_id(\u0027aaacd1d0-55a2-4ce8-818a-b5439df8adc9\u0027)"},{"line_number":57,"context_line":"    def test_create_image_from_stopped_server(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"7ac969e8_d5ce86b3","line":54,"in_reply_to":"dada55a8_25f82549","updated":"2016-08-12 23:23:13.000000000","message":"That is a nice point.\n\nThe status code of \"delete an image\" API is 204 according to [1]\nThat means the operation should be sync based on api-wg guideline[2].\n\nNova just passes the request to Glance as a proxy and Glance also returns 204 on [3] to Nova.\n\nSo this looks good for me.\n\n[1]: https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/images.py#L100\n[2]: https://github.com/openstack/api-wg/blob/master/guidelines/http.rst#2xx-success-codes\n[3]: https://github.com/openstack/tempest/blob/master/tempest/lib/services/image/v2/images_client.py#L86","commit_id":"43147c6c0b3ca1841f28f4e0284a269d7fe99b6b"},{"author":{"_account_id":9152,"name":"Castulo J. Martinez","email":"castulo.martinez@intel.com","username":"cas"},"change_message_id":"add2c7341fe9c65d14d879cd971b5360b761260e","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        self.client.delete_image(image[\u0027id\u0027])"},{"line_number":52,"context_line":"        msg \u003d (\u0027The image with ID {image_id} failed to be deleted\u0027"},{"line_number":53,"context_line":"               .format(image_id\u003dimage[\u0027id\u0027]))"},{"line_number":54,"context_line":"        self.assertTrue(self.client.is_resource_deleted(image[\u0027id\u0027]), msg)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @test.idempotent_id(\u0027aaacd1d0-55a2-4ce8-818a-b5439df8adc9\u0027)"},{"line_number":57,"context_line":"    def test_create_image_from_stopped_server(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_25f82549","line":54,"in_reply_to":"dada55a8_908a15be","updated":"2016-07-25 17:58:58.000000000","message":"The image gets marked as deleted right away, although it can take some time to be deleted in the backend storage.","commit_id":"43147c6c0b3ca1841f28f4e0284a269d7fe99b6b"}]}
