)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"dd5901dfa619bd55b910d9c7d32b2d3569782a6f","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"show_image(...) uses GET, get_image_meta(...) uses HEAD. To get image"},{"line_number":14,"context_line":"status we have to use get_image_meta(...) method because only in this"},{"line_number":15,"context_line":"case we will be able to retrieve image status."},{"line_number":16,"context_line":"It is not very convenient because many people got used to using"},{"line_number":17,"context_line":"show_\u003cfoo\u003e(...) method to get \u003cfoo\u003e status. So this commit merges"},{"line_number":18,"context_line":"show_image(...) and get_image_meta(...) methods into one show_image(...)"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"dab17558_40f445ce","line":15,"updated":"2016-05-13 15:20:02.000000000","message":"This is not true according to http://developer.openstack.org/api-ref-image-v1.html#showImage-v1 - if it is true it feels like a bug in the API or at least in the documentation.","commit_id":"88a83821c1502cc0f33ffb2314025c143544741c"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"dd5901dfa619bd55b910d9c7d32b2d3569782a6f","unresolved":false,"context_lines":[{"line_number":19,"context_line":"method."},{"line_number":20,"context_line":"Also, now we have show_image(...) method that allows us to get image status"},{"line_number":21,"context_line":"and we will be able to use common function waiters.wait_for_image_status(...)"},{"line_number":22,"context_line":"(https://review.openstack.org/#/c/297511/)."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Change-Id: I4ff165f22d68b6dbf55c20b774bc290020faa8cd"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"dab17558_000fdd88","line":22,"updated":"2016-05-13 15:20:02.000000000","message":"The dependency between the two patches is not clear to me.","commit_id":"88a83821c1502cc0f33ffb2314025c143544741c"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f2d68aa9db3047cfb1f9a1c75a9a7211ba37c2eb","unresolved":false,"context_lines":[{"line_number":19,"context_line":"method."},{"line_number":20,"context_line":"Also, now we have show_image(...) method that allows us to get image status"},{"line_number":21,"context_line":"and we will be able to use common function waiters.wait_for_image_status(...)"},{"line_number":22,"context_line":"(https://review.openstack.org/#/c/297511/)."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Change-Id: I4ff165f22d68b6dbf55c20b774bc290020faa8cd"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"dab17558_167c4771","line":22,"in_reply_to":"dab17558_000fdd88","updated":"2016-05-13 15:47:41.000000000","message":"https://review.openstack.org/#/c/297511/ will not work without changes made in this patch. We need show_image() method that will give us image status. For now, only get_image_meta() method gives image status.","commit_id":"88a83821c1502cc0f33ffb2314025c143544741c"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"42e836560360b99e1a11a443e96532e30e3339a0","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"show_image(...) and get_image_meta(...)."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"show_image(...) uses GET, get_image_meta(...) uses HEAD. To get image"},{"line_number":14,"context_line":"status we have to use get_image_meta(...) method because only in this"},{"line_number":15,"context_line":"case we will be able to retrieve image status."},{"line_number":16,"context_line":"It is not very convenient because many people got used to using"},{"line_number":17,"context_line":"show_\u003cfoo\u003e(...) method to get \u003cfoo\u003e status. So this commit renames"},{"line_number":18,"context_line":"show_image(...) into show_raw_image(...) and get_image_meta(...) into"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"bab6814e_82503160","line":15,"range":{"start_line":13,"start_character":57,"end_line":15,"end_character":46},"updated":"2016-05-24 09:33:55.000000000","message":"I don\u0027t think this is true, and I think the statement is a bit misleading.\nIt is possible to get image status from GET calls. The reason for using HEAD is not that it\u0027s the only way, but that it more lightweight.","commit_id":"0053d33c869d7799c04af629a8021f1cbaf2b177"}],"tempest/api/image/v1/test_images.py":[{"author":{"_account_id":12024,"name":"Tong Liu","email":"tongl@vmware.com","username":"tong101"},"change_message_id":"4d2c1f8bfa298e29a5a30ad4ebdf52b5ff50aa15","unresolved":false,"context_lines":[{"line_number":305,"context_line":"    @test.idempotent_id(\u002701752c1c-0275-4de3-9e5b-876e44541928\u0027)"},{"line_number":306,"context_line":"    def test_list_image_metadata(self):"},{"line_number":307,"context_line":"        # All metadata key/value pairs for an image should be returned"},{"line_number":308,"context_line":"        resp_metadata \u003d self.client.show_image(self.image_id, image_meta\u003dTrue)"},{"line_number":309,"context_line":"        expected \u003d {\u0027key1\u0027: \u0027value1\u0027}"},{"line_number":310,"context_line":"        self.assertEqual(expected, resp_metadata[\u0027properties\u0027])"},{"line_number":311,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1a122d0e_a4fcfe72","line":308,"updated":"2016-04-19 17:12:50.000000000","message":"The default is already True. I don\u0027t think you need to pass image_meta kwarg here.","commit_id":"15a511393b5fcd63816fbeb246e63c2e9f9d6369"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"6e542c83d62613d27b11538e4a58e54e511676c2","unresolved":false,"context_lines":[{"line_number":305,"context_line":"    @test.idempotent_id(\u002701752c1c-0275-4de3-9e5b-876e44541928\u0027)"},{"line_number":306,"context_line":"    def test_list_image_metadata(self):"},{"line_number":307,"context_line":"        # All metadata key/value pairs for an image should be returned"},{"line_number":308,"context_line":"        resp_metadata \u003d self.client.show_image(self.image_id, image_meta\u003dTrue)"},{"line_number":309,"context_line":"        expected \u003d {\u0027key1\u0027: \u0027value1\u0027}"},{"line_number":310,"context_line":"        self.assertEqual(expected, resp_metadata[\u0027properties\u0027])"},{"line_number":311,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1a122d0e_afdb374e","line":308,"in_reply_to":"1a122d0e_a4fcfe72","updated":"2016-04-19 17:33:32.000000000","message":"Yes, you are absolutely right, but in these tests it was done intentionally for more understanding and code readability. I can remove it if someone else requests it, though :)","commit_id":"15a511393b5fcd63816fbeb246e63c2e9f9d6369"},{"author":{"_account_id":12024,"name":"Tong Liu","email":"tongl@vmware.com","username":"tong101"},"change_message_id":"4d2c1f8bfa298e29a5a30ad4ebdf52b5ff50aa15","unresolved":false,"context_lines":[{"line_number":313,"context_line":"    def test_update_image_metadata(self):"},{"line_number":314,"context_line":"        # The metadata for the image should match the updated values"},{"line_number":315,"context_line":"        req_metadata \u003d {\u0027key1\u0027: \u0027alt1\u0027, \u0027key2\u0027: \u0027value2\u0027}"},{"line_number":316,"context_line":"        metadata \u003d self.client.show_image(self.image_id, image_meta\u003dTrue)"},{"line_number":317,"context_line":"        self.assertEqual(metadata[\u0027properties\u0027], {\u0027key1\u0027: \u0027value1\u0027})"},{"line_number":318,"context_line":"        metadata[\u0027properties\u0027].update(req_metadata)"},{"line_number":319,"context_line":"        metadata \u003d self.client.update_image("}],"source_content_type":"text/x-python","patch_set":2,"id":"1a122d0e_8401026d","line":316,"updated":"2016-04-19 17:12:50.000000000","message":"ditto","commit_id":"15a511393b5fcd63816fbeb246e63c2e9f9d6369"},{"author":{"_account_id":12024,"name":"Tong Liu","email":"tongl@vmware.com","username":"tong101"},"change_message_id":"4d2c1f8bfa298e29a5a30ad4ebdf52b5ff50aa15","unresolved":false,"context_lines":[{"line_number":319,"context_line":"        metadata \u003d self.client.update_image("},{"line_number":320,"context_line":"            self.image_id, properties\u003dmetadata[\u0027properties\u0027])[\u0027image\u0027]"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"        resp_metadata \u003d self.client.show_image(self.image_id, image_meta\u003dTrue)"},{"line_number":323,"context_line":"        expected \u003d {\u0027key1\u0027: \u0027alt1\u0027, \u0027key2\u0027: \u0027value2\u0027}"},{"line_number":324,"context_line":"        self.assertEqual(expected, resp_metadata[\u0027properties\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a122d0e_e4fa7674","line":322,"updated":"2016-04-19 17:12:50.000000000","message":"ditto","commit_id":"15a511393b5fcd63816fbeb246e63c2e9f9d6369"}],"tempest/services/image/v1/json/images_client.py":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"dd5901dfa619bd55b910d9c7d32b2d3569782a6f","unresolved":false,"context_lines":[{"line_number":198,"context_line":"        body \u003d json.loads(body)"},{"line_number":199,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    def show_image(self, image_id, with_image_data\u003dFalse):"},{"line_number":202,"context_line":"        url \u003d \u0027v1/images/%s\u0027 % image_id"},{"line_number":203,"context_line":"        if with_image_data:"},{"line_number":204,"context_line":"            resp, body \u003d self.get(url)"}],"source_content_type":"text/x-python","patch_set":5,"id":"dab17558_80bf4da9","line":201,"updated":"2016-05-13 15:20:02.000000000","message":"The parameter naming is really confusing.\nHEAD will only give metadata, GET will give metadata and the image itself. \nSo if you really want to have one single method, you should call the parameter something like \"metadata_only\" or \"image_binary\".\nWhatever the name I would default to getting only the metadata, as getting the whole image is more expensive and should not be done by default.","commit_id":"88a83821c1502cc0f33ffb2314025c143544741c"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"11ff55883479d949025c2da8a397e1bcfb603b77","unresolved":false,"context_lines":[{"line_number":198,"context_line":"        body \u003d json.loads(body)"},{"line_number":199,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    def show_image(self, image_id):"},{"line_number":202,"context_line":"        url \u003d \u0027v1/images/%s\u0027 % image_id"},{"line_number":203,"context_line":"        resp, __ \u003d self.head(url)"},{"line_number":204,"context_line":"        self.expected_success(200, resp.status)"}],"source_content_type":"text/x-python","patch_set":9,"id":"bab6814e_af1243b2","line":201,"updated":"2016-05-19 11:05:36.000000000","message":"FYI.: key v3 uses the \u0027check_\u0027   word for head, but I am not sure is it makes more sense here.","commit_id":"0053d33c869d7799c04af629a8021f1cbaf2b177"}]}
