)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"a253b4bee9e4430d984f2a0d8558daae30496024","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"5cd94c72_b7938933","updated":"2022-10-14 13:57:41.000000000","message":"Hi guys, I\u0027m not sure if this should be possible or not. It seems like it should be, but I get a JSON path error that makes me think I\u0027m just not doing the PATCH right. If this is possible, we should have a test for it, and if not, maybe we should have a better error message we can test for?","commit_id":"3a0f0ff05b141d73dc76dadbae4a2ad076f478a6"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"470fd87492c66f7db8a0a73826518b6de4114294","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"395afb49_54d7ec67","updated":"2022-10-19 06:35:16.000000000","message":"Could you also add the curl command along with input here to try locally?","commit_id":"babd879cc72c62d21d44eb2943034c3b4ff5edb6"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"80986ac4ed19c3e903a6536c9c3e521f60358224","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ee6f1ab1_6fb7ae6a","updated":"2022-10-19 06:52:11.000000000","message":"Hope this helps;\nIf we want to provide actual support to replace the location as well then we need to make change to API to accept new location as an input as well.","commit_id":"babd879cc72c62d21d44eb2943034c3b4ff5edb6"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5ba28bd9e07e077ab350d432c18845d0c0146546","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e6178704_2370cfa6","in_reply_to":"ee6f1ab1_6fb7ae6a","updated":"2022-10-19 13:34:03.000000000","message":"I don\u0027t want to extend this at all, no, I just want to make sure we\u0027re testing anything that is possible so we know what the behavior is. I\u0027ll try tweaking this to make it replace the location in a similar way.","commit_id":"babd879cc72c62d21d44eb2943034c3b4ff5edb6"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"9839c011ea0c44675bdd167c72aed1a6c7b48a9b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"5c905e10_a8740c84","updated":"2022-10-19 14:03:15.000000000","message":"Looks better to me!","commit_id":"59e149662a0b02dec105e2bbc6d34e22fe05979f"},{"author":{"_account_id":30674,"name":"Lukas Piwowarski","email":"lpiwowar@redhat.com","username":"lukas-piwowarski"},"change_message_id":"399f7531cf5c22219f24f4120e2764d2a6424a50","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"94d3de27_7dd1f850","updated":"2022-10-20 13:03:31.000000000","message":"Thanks for the patch! I added a comment.","commit_id":"59e149662a0b02dec105e2bbc6d34e22fe05979f"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec9457fdb1fc64ad12e658537f010af537c7fbc3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"8de2f65b_802335d6","updated":"2022-11-03 13:28:35.000000000","message":"Thanks gmann!","commit_id":"d2822ddc41d66fb88330810c1729df23a097ab38"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"eaf4becb732b154f17fc8e902deb41cb67e67949","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"375784fa_f2cb81af","updated":"2022-11-02 19:41:11.000000000","message":"looks ok to me, can you update the nova patch depends-on to see the result of this new test https://review.opendev.org/c/openstack/nova/+/860863","commit_id":"d2822ddc41d66fb88330810c1729df23a097ab38"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"0c89e5f9b5d9d6dd99cbc305c56fa33ec6550c39","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"bfe2e118_f1e649f8","in_reply_to":"375784fa_f2cb81af","updated":"2022-11-02 20:24:03.000000000","message":"I can, but I\u0027m much less concerned about this than I am the devstack and nova patches.. If we can aim to get this landed ASAP (assuming it runs) then that\u0027s cool, but I\u0027d much prefer to get the other things landed so we\u0027re really testing the locations stuff ahead of coming changes.","commit_id":"d2822ddc41d66fb88330810c1729df23a097ab38"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"87ca593dc316a6b51c96ede7f8d846e357e3ff57","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c5dd7579_feb4b678","in_reply_to":"bfe2e118_f1e649f8","updated":"2022-11-02 22:25:51.000000000","message":"sure.\n\ntest is passing https://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_882/860863/4/check/nova-ceph-multistore/8826b7d/testr_results.html","commit_id":"d2822ddc41d66fb88330810c1729df23a097ab38"}],"tempest/api/image/v2/test_images.py":[{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"80986ac4ed19c3e903a6536c9c3e521f60358224","unresolved":true,"context_lines":[{"line_number":875,"context_line":"        expected_original_loc \u003d image[\u0027locations\u0027][0]"},{"line_number":876,"context_line":""},{"line_number":877,"context_line":"        new_loc \u003d {\u0027metadata\u0027: {\u0027date\u0027: \u00272015-10-15\u0027},"},{"line_number":878,"context_line":"                   \u0027url\u0027: \u0027%s#new3\u0027 % CONF.image.http_image}"},{"line_number":879,"context_line":"        self.client.update_image(image[\u0027id\u0027], ["},{"line_number":880,"context_line":"            dict(replace\u003d\u0027/locations/1/url\u0027, value\u003dnew_loc[\u0027url\u0027])])"},{"line_number":881,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"fcb35e1c_c904d3b7","line":878,"range":{"start_line":878,"start_character":19,"end_line":878,"end_character":60},"updated":"2022-10-19 06:52:11.000000000","message":"AFAIK, the location-update is used to update the metadata of the said location but not the location itself and that is why you might be getting this error.\n\nlocation-update     Update metadata of an image\u0027s location.\nUpdate metadata of an image\u0027s location.\n\nPositional arguments:\n  \u003cIMAGE_ID\u003e           ID of image whose location is to be updated.\n\nOptional arguments:\n  --metadata \u003cSTRING\u003e  Metadata associated with the location. Must be a valid JSON object (default: {})\n\nRequired arguments:\n  --url \u003cURL\u003e          URL of location to update. \u003cThis help text is confusing though\u003e\n  \n  \nExample;\n\nglance --debug location-update bb6cfe57-fd08-4930-a1c4-3a7b33271fed --url \u003clocation-url-of-which-metadata-needs-to-be-updated\u003e --metadata \u0027{\"store\": \"ceph\", \"foo\": \"bar\"}\u0027\n\n\nDEBUG:keystoneauth.session:REQ: curl -g -i -X PATCH http://10.0.108.117/image/v2/images/bb6cfe57-fd08-4930-a1c4-3a7b33271fed -H \"Content-Type: application/openstack-images-v2.1-json-patch\" -H \"User-Agent: python-glanceclient\" -H \"X-Auth-Token: {SHA256}63181abaf950e36446396997f80a1e4b0adb6519c04fff2ca9db44a6f10eb305\" -d \u0027[{\"op\": \"replace\", \"path\": \"/locations\", \"value\": [{\"url\": \"rbd://81479ba7-6a53-4ab3-90e5-bebe61a10315/images/bb6cfe57-fd08-4930-a1c4-3a7b33271fed/snap\", \"metadata\": {\"store\": \"ceph\"}}, {\"url\": \"rbd://81479ba7-6a53-4ab3-90e5-bebe61a10315/images/29069cef-4f1f-4bd3-bdbf-40ecab44a781/snap\", \"metadata\": {\"store\": \"ceph\", \"foo\": \"bar\"}}]}]\u0027","commit_id":"babd879cc72c62d21d44eb2943034c3b4ff5edb6"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"9839c011ea0c44675bdd167c72aed1a6c7b48a9b","unresolved":false,"context_lines":[{"line_number":875,"context_line":"        expected_original_loc \u003d image[\u0027locations\u0027][0]"},{"line_number":876,"context_line":""},{"line_number":877,"context_line":"        new_loc \u003d {\u0027metadata\u0027: {\u0027date\u0027: \u00272015-10-15\u0027},"},{"line_number":878,"context_line":"                   \u0027url\u0027: \u0027%s#new3\u0027 % CONF.image.http_image}"},{"line_number":879,"context_line":"        self.client.update_image(image[\u0027id\u0027], ["},{"line_number":880,"context_line":"            dict(replace\u003d\u0027/locations/1/url\u0027, value\u003dnew_loc[\u0027url\u0027])])"},{"line_number":881,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"2a451bac_85415b59","line":878,"range":{"start_line":878,"start_character":19,"end_line":878,"end_character":60},"in_reply_to":"fcb35e1c_c904d3b7","updated":"2022-10-19 14:03:15.000000000","message":"Done","commit_id":"babd879cc72c62d21d44eb2943034c3b4ff5edb6"},{"author":{"_account_id":30674,"name":"Lukas Piwowarski","email":"lpiwowar@redhat.com","username":"lukas-piwowarski"},"change_message_id":"399f7531cf5c22219f24f4120e2764d2a6424a50","unresolved":true,"context_lines":[{"line_number":870,"context_line":""},{"line_number":871,"context_line":"    @decorators.idempotent_id(\u0027bf6e0009-c039-4884-b498-db074caadb10\u0027)"},{"line_number":872,"context_line":"    def test_replace_location(self):"},{"line_number":873,"context_line":"        image \u003d self.test_set_multiple_locations()"},{"line_number":874,"context_line":"        original_locs \u003d image[\u0027locations\u0027]"},{"line_number":875,"context_line":""},{"line_number":876,"context_line":"        # Replacing with the exact thing should work"}],"source_content_type":"text/x-python","patch_set":3,"id":"78e5229f_6a98a004","line":873,"range":{"start_line":873,"start_character":16,"end_line":873,"end_character":50},"updated":"2022-10-20 13:03:31.000000000","message":"I\u0027m not sure whether we should reuse one test inside another one. I think that it might be better to have a separate functions that execute the common code (lines 52-86).","commit_id":"59e149662a0b02dec105e2bbc6d34e22fe05979f"}]}
