)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"292c2abb75ea57ede77e1c2f4e3c64bde3215f2e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f91f30e6_6aea5010","updated":"2022-07-14 16:28:22.000000000","message":"Adding more info and comparing swift to radosgw (its not related to the test but it should impact on the way we decide to write the code ...)\n\nin swift : the allowed_digests dictionay exists with params\n\n\n\"tempurl\": {\"methods\": [\"GET\", \"HEAD\", \"PUT\", \"POST\", \"DELETE\"], \"incoming_remove_headers\": [\"x-timestamp\"], \"incoming_allow_headers\": [], \"outgoing_remove_headers\": [\"x-object-meta-*\"], \"outgoing_allow_headers\": [\"x-object-meta-public-*\"], \"allowed_digests\": [\"sha1\", \"sha256\", \"sha512\"]}, \"formpost\": {}, \"s3api\": {\"max_bucket_listing\": 1000, \"max_parts_listing\": 1000, \"max_upload_part_num\": 1000, \"max_multi_delete_objects\": 1000, \"allow_multipart_uploads\": true, \"min_segment_size\": 5242880, \"s3_acl\": false}, \"staticweb\": {}, \"container_quotas\": {}, \"account_quotas\": {}, \"slo\": {\"max_manifest_segments\": 1000, \"max_manifest_size\": 2097152, \"yield_frequency\": 10, \"min_segment_size\": 1, \"allow_async_delete\": false},\n\n\nTrying with radosgw the same command\" - \u003ethe allowed_digests dict missing \n\n\"tempurl\":{\"methods\":[\"GET\",\"HEAD\",\"PUT\",\"POST\",\"DELETE\"]\n\n\nbased on radosgw capabilites we can not know what allowed_digests supported ... \nagain , its not related but we should know that :) ","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"102b4c1287ef1b59f044eb1c9ce0b5ddb52cdecf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"4321f17f_cc34bb85","updated":"2022-07-14 13:26:02.000000000","message":"Because, for the record, RGW is not sha256-compatible yet","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"b727702bc4ef2a9e54019decadf7db441766e631","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c5986ff9_2bf888aa","updated":"2023-01-24 21:28:12.000000000","message":"Benny, Martin, John ... sorry I missed the updates and I am only replying now\n\nGiven we merged the alternate version [1], I will abandon this yes\n\n1. https://review.opendev.org/c/openstack/tempest/+/849888","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"7554c0b6f01ad067f3cf700205ece66fcb266924","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"6484e019_64ca5558","updated":"2022-07-18 10:35:44.000000000","message":"I think we dont need it anymore","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"e610c7d4d8e8679b647b40163899c5692641cb2f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"8ffcef33_fbaff130","updated":"2022-07-14 14:59:00.000000000","message":"Waiting for your comment before +1 ","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"94f3ff08922c5258c12fe93e40fed57fef742bbd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"90b35a6e_0b9ad03c","updated":"2022-07-14 14:20:22.000000000","message":"makes sense to me","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":18002,"name":"John Fulton","email":"fulton@redhat.com","username":"fultonj"},"change_message_id":"f2671d68a464a4f83bdaffb9f1d0c590b94b503e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"ed9d7262_c9a10967","updated":"2023-01-23 12:57:42.000000000","message":"should this be abandoned? ","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"5a5d571d97ac1744d631faf97c930151c87a56be","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0a21c8b5_a3614b9b","updated":"2022-07-18 10:19:48.000000000","message":"so if https://review.opendev.org/c/openstack/tempest/+/849888 is merged, is this still needed or should we abandon?","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"}],"tempest/api/object_storage/test_object_temp_url.py":[{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"e610c7d4d8e8679b647b40163899c5692641cb2f","unresolved":true,"context_lines":[{"line_number":35,"context_line":"        cls.digests \u003d capabilities.get("},{"line_number":36,"context_line":"            \u0027tempurl\u0027, {}).get("},{"line_number":37,"context_line":"            \u0027allowed_digests\u0027, [])"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"        # create a container"},{"line_number":40,"context_line":"        cls.container_name \u003d cls.create_container()"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"fa8d353f_bc2e3643","line":38,"updated":"2022-07-14 14:59:00.000000000","message":"Hi , quick question.\n\ncapabilities[\u0027tempurl\u0027][\u0027allowed_digests\u0027] can return multiple values ,\n[\u0027sha1\u0027, \u0027sha256\u0027, \u0027sha512\u0027]\n\nSo:\n#1 if tempurl is not in the dict we return {} and call get again ? \nWe should raise error here  ... \n\n#2 what if sha512 is the only option , we revert to sha1 ? maybe \nwe can do it in otherway in line #87\n\ngetattr(hashlib, cls.digests[0])  ---\u003e it will return the supported digests without the if else ....  \n\nor if you like we can make it as parameters in conf if it does matter.","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"2776d9d04a12328e124924e28178f0dbd2326ef3","unresolved":true,"context_lines":[{"line_number":35,"context_line":"        cls.digests \u003d capabilities.get("},{"line_number":36,"context_line":"            \u0027tempurl\u0027, {}).get("},{"line_number":37,"context_line":"            \u0027allowed_digests\u0027, [])"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"        # create a container"},{"line_number":40,"context_line":"        cls.container_name \u003d cls.create_container()"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"0fcce1bb_ce31ce38","line":38,"in_reply_to":"4223a5e1_79688491","updated":"2022-07-15 09:47:42.000000000","message":"for those who prefer the config option, I made a similar change which relies on a config setting instead: https://review.opendev.org/c/openstack/tempest/+/849888\n\nif you could help getting merged either that or this, that\u0027d be nice :)","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"3ce9ee9ea8fdc3ed50a38f75a61c0ce9b692ec9b","unresolved":true,"context_lines":[{"line_number":35,"context_line":"        cls.digests \u003d capabilities.get("},{"line_number":36,"context_line":"            \u0027tempurl\u0027, {}).get("},{"line_number":37,"context_line":"            \u0027allowed_digests\u0027, [])"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"        # create a container"},{"line_number":40,"context_line":"        cls.container_name \u003d cls.create_container()"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"4223a5e1_79688491","line":38,"in_reply_to":"fa8d353f_bc2e3643","updated":"2022-07-14 15:51:46.000000000","message":"regarding (1) I don\u0027t think we want to error because we don\u0027t know if other implementations even have \"tempurl\" in /info\n\nregarding (2), considering the goal is to test specific alogs, maybe instead of picking a stronger one when supported we rather make this a tempest config option?","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"c64fd53bb20f0944af1ce7bff86733658ff851f5","unresolved":true,"context_lines":[{"line_number":84,"context_line":"            container, object_name)"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"        hmac_body \u003d \u0027%s\\n%s\\n%s\u0027 % (method, expires, path)"},{"line_number":87,"context_line":"        hlib \u003d hashlib.sha256 if \u0027sha256\u0027 in self.digests else hashlib.sha1"},{"line_number":88,"context_line":"        sig \u003d hmac.new("},{"line_number":89,"context_line":"            key.encode(), hmac_body.encode(), hlib"},{"line_number":90,"context_line":"        ).hexdigest()"}],"source_content_type":"text/x-python","patch_set":1,"id":"75c1684a_df13aa97","line":87,"updated":"2022-07-14 15:00:59.000000000","message":"We hide here a bug in case the list is empty and we set it to sha1 ... please see the comment above","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"953bc513ebf9d0a00c3a2606480305206dcd89ab","unresolved":true,"context_lines":[{"line_number":84,"context_line":"            container, object_name)"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"        hmac_body \u003d \u0027%s\\n%s\\n%s\u0027 % (method, expires, path)"},{"line_number":87,"context_line":"        hlib \u003d hashlib.sha256 if \u0027sha256\u0027 in self.digests else hashlib.sha1"},{"line_number":88,"context_line":"        sig \u003d hmac.new("},{"line_number":89,"context_line":"            key.encode(), hmac_body.encode(), hlib"},{"line_number":90,"context_line":"        ).hexdigest()"}],"source_content_type":"text/x-python","patch_set":1,"id":"9ccce137_a09b46e9","line":87,"in_reply_to":"75c1684a_df13aa97","updated":"2022-07-14 15:07:03.000000000","message":"Then the test will fail, so it should be visible. It\u0027s the same behavior as we had before switching to sha256.","commit_id":"d414cf48457ae8413d36b2e1865d93647ea8cd91"}]}
