diff --git a/glance/api/v2/cached_images.py b/glance/api/v2/cached_images.py index 689c56a2de..a91720c6b6 100644 --- a/glance/api/v2/cached_images.py +++ b/glance/api/v2/cached_images.py @@ -240,6 +240,12 @@ class CachedImageSerializer(wsgi.JSONResponseSerializer): def queue_image_from_api(self, response, result): response.status_int = 202 + def clear_cache(self, response, result): + response.status_int = 204 + + def delete_cache_entry(self, response, result): + response.status_int = 204 + def create_resource(): """Cached Images resource factory method""" diff --git a/glance/tests/functional/v2/test_cache_api.py b/glance/tests/functional/v2/test_cache_api.py index 4865c6d4f9..35ddca169f 100644 --- a/glance/tests/functional/v2/test_cache_api.py +++ b/glance/tests/functional/v2/test_cache_api.py @@ -85,12 +85,12 @@ class TestImageCache(functional.SynchronousAPIBase): response = self.api_put(path) self.assertEqual(expected_code, response.status_code) - def cache_delete(self, image_id, expected_code=200): + def cache_delete(self, image_id, expected_code=204): path = '/v2/cache/%s' % image_id response = self.api_delete(path) self.assertEqual(expected_code, response.status_code) - def cache_clear(self, target='', expected_code=200): + def cache_clear(self, target='', expected_code=204): path = '/v2/cache' headers = {} if target: diff --git a/releasenotes/notes/bug-1980049-623d2eb0fa074136.yaml b/releasenotes/notes/bug-1980049-623d2eb0fa074136.yaml new file mode 100644 index 0000000000..544d0defc5 --- /dev/null +++ b/releasenotes/notes/bug-1980049-623d2eb0fa074136.yaml @@ -0,0 +1,14 @@ +--- +upgrade: + - | + The Image service API call ``DELETE /v2/cache/{image_id}`` and + ``DELETE /v2/cache`` now returns a 204 (No Content) response code + to indicate success. In glance 24.0.0 (the initial Yoga release), + it had mistakenly returned a 200. + +fixes: + - | + Bug `1980049 `_: + Fixed the success response code of the REST API call + ``DELETE /v2/cache/{image_id}`` and ``DELETE /v2/cache`` to be + 204 (No Content), following the original design of the feature.