)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"71029d8f2a70e25a82c31f6d85d4f3231973bddf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"84c846a8_63e2771a","updated":"2026-05-26 07:10:09.000000000","message":"This blocks multistore jobs like glance-multistore-cinder-import, tempest-integrated-storage-import, glance-s3-multistore etc which is using proxy to forward call to another glance node.","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"f81317d23e7519f1501d03eeaf20de369381e2ac","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"93d93514_8e930561","updated":"2026-05-26 08:05:21.000000000","message":"nice catch, let\u0027s wait for the jobs to report to verify the fix","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"d0dc589a8a4eea1a00d0e7f4987822732fef8cc5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"166d6df7_39824bf0","updated":"2026-05-26 11:44:28.000000000","message":"recheck redirect validation failed for webdownload which is not related to this change,","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"66071c89f49c7a6764704f538fa82223f3dd8fb8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"bb4f8b82_4d3db8d8","updated":"2026-05-26 09:22:44.000000000","message":"recheck unrelated error regarding resize of volume","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"a6ab0fdde1051cb541c58730f0bfe94750949709","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"5b423c56_9cc606b3","updated":"2026-05-28 05:25:59.000000000","message":"thank you for review!!","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"326d6bc28f795dfca23a0145fddd048534fd6cab","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b98fe1a6_9e64f233","updated":"2026-05-28 14:19:29.000000000","message":"Code and test look good; release note renders correctly in HTML, plus very nice writeup in the bug report.","commit_id":"c986cf4dbc854cf3305d525757d5e01dc8c10ef4"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"1f4b786d1a415cc2500e8e3ad3f7f18664f3a664","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b15ac51d_c5949376","updated":"2026-05-28 11:07:42.000000000","message":"recheck same failure in different job","commit_id":"c986cf4dbc854cf3305d525757d5e01dc8c10ef4"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"87d8b016be6d466677feabea07130780fab62f7b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"c97bbc2e_58cbe104","updated":"2026-05-28 07:43:20.000000000","message":"recheck unrelated error while resizing volume","commit_id":"c986cf4dbc854cf3305d525757d5e01dc8c10ef4"}],"glance/context.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"153f22ebf7a0a59a3edbfde8e48d4a3d76b4557e","unresolved":true,"context_lines":[{"line_number":32,"context_line":"    keystoneauth1 option. Fall back to identity_uri for deployments"},{"line_number":33,"context_line":"    using older keystonemiddleware that still register it."},{"line_number":34,"context_line":"    \"\"\""},{"line_number":35,"context_line":"    for opt in (\u0027auth_url\u0027, \u0027identity_uri\u0027):"},{"line_number":36,"context_line":"        try:"},{"line_number":37,"context_line":"            endpoint \u003d getattr(CONF.keystone_authtoken, opt)"},{"line_number":38,"context_line":"        except cfg.NoSuchOptError:"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa8b7251_47c91f1b","line":35,"range":{"start_line":35,"start_character":29,"end_line":35,"end_character":41},"updated":"2026-05-27 15:13:14.000000000","message":"I\u0027m wondering if we should rather check www_authenticate_uri instead ? The minimum version of keystonemiddleware (5.1.0) already has that option and identity_uri is already an alias of www_authenticate_uri at that release. Then you don\u0027t need that NoSuchOptError handling.","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"a6ab0fdde1051cb541c58730f0bfe94750949709","unresolved":false,"context_lines":[{"line_number":32,"context_line":"    keystoneauth1 option. Fall back to identity_uri for deployments"},{"line_number":33,"context_line":"    using older keystonemiddleware that still register it."},{"line_number":34,"context_line":"    \"\"\""},{"line_number":35,"context_line":"    for opt in (\u0027auth_url\u0027, \u0027identity_uri\u0027):"},{"line_number":36,"context_line":"        try:"},{"line_number":37,"context_line":"            endpoint \u003d getattr(CONF.keystone_authtoken, opt)"},{"line_number":38,"context_line":"        except cfg.NoSuchOptError:"}],"source_content_type":"text/x-python","patch_set":1,"id":"1cb02902_c5959404","line":35,"range":{"start_line":35,"start_character":29,"end_line":35,"end_character":41},"in_reply_to":"540b15d2_817680c1","updated":"2026-05-28 05:25:59.000000000","message":"Acknowledged","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"275b150197fbe1cc8723840edd74f354870bb923","unresolved":true,"context_lines":[{"line_number":32,"context_line":"    keystoneauth1 option. Fall back to identity_uri for deployments"},{"line_number":33,"context_line":"    using older keystonemiddleware that still register it."},{"line_number":34,"context_line":"    \"\"\""},{"line_number":35,"context_line":"    for opt in (\u0027auth_url\u0027, \u0027identity_uri\u0027):"},{"line_number":36,"context_line":"        try:"},{"line_number":37,"context_line":"            endpoint \u003d getattr(CONF.keystone_authtoken, opt)"},{"line_number":38,"context_line":"        except cfg.NoSuchOptError:"}],"source_content_type":"text/x-python","patch_set":1,"id":"540b15d2_817680c1","line":35,"range":{"start_line":35,"start_character":29,"end_line":35,"end_character":41},"in_reply_to":"fa8b7251_47c91f1b","updated":"2026-05-27 15:28:18.000000000","message":"See my suggestion below. Note that you may also have to update the release note, too.","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"275b150197fbe1cc8723840edd74f354870bb923","unresolved":true,"context_lines":[{"line_number":31,"context_line":"    Prefer auth_url from [keystone_authtoken], which is the modern"},{"line_number":32,"context_line":"    keystoneauth1 option. Fall back to identity_uri for deployments"},{"line_number":33,"context_line":"    using older keystonemiddleware that still register it."},{"line_number":34,"context_line":"    \"\"\""},{"line_number":35,"context_line":"    for opt in (\u0027auth_url\u0027, \u0027identity_uri\u0027):"},{"line_number":36,"context_line":"        try:"},{"line_number":37,"context_line":"            endpoint \u003d getattr(CONF.keystone_authtoken, opt)"},{"line_number":38,"context_line":"        except cfg.NoSuchOptError:"},{"line_number":39,"context_line":"            continue"},{"line_number":40,"context_line":"        if endpoint:"},{"line_number":41,"context_line":"            return endpoint"},{"line_number":42,"context_line":"    raise cfg.RequiredOptError(\u0027auth_url\u0027, group\u003d\u0027keystone_authtoken\u0027)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"def get_ksa_client(context):"}],"source_content_type":"text/x-python","patch_set":1,"id":"6f948d12_bb87b65e","line":42,"range":{"start_line":34,"start_character":7,"end_line":42,"end_character":70},"updated":"2026-05-27 15:28:18.000000000","message":"```suggestion\n    \"\"\"\n    for opt in (\u0027auth_url\u0027, \u0027www_authenticate_uri\u0027):\n        endpoint \u003d getattr(CONF.keystone_authtoken, opt)\n        if endpoint:\n            return endpoint\n    raise cfg.RequiredOptError(\u0027auth_url\u0027, group\u003d\u0027keystone_authtoken\u0027)\n```","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"a6ab0fdde1051cb541c58730f0bfe94750949709","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    Prefer auth_url from [keystone_authtoken], which is the modern"},{"line_number":32,"context_line":"    keystoneauth1 option. Fall back to identity_uri for deployments"},{"line_number":33,"context_line":"    using older keystonemiddleware that still register it."},{"line_number":34,"context_line":"    \"\"\""},{"line_number":35,"context_line":"    for opt in (\u0027auth_url\u0027, \u0027identity_uri\u0027):"},{"line_number":36,"context_line":"        try:"},{"line_number":37,"context_line":"            endpoint \u003d getattr(CONF.keystone_authtoken, opt)"},{"line_number":38,"context_line":"        except cfg.NoSuchOptError:"},{"line_number":39,"context_line":"            continue"},{"line_number":40,"context_line":"        if endpoint:"},{"line_number":41,"context_line":"            return endpoint"},{"line_number":42,"context_line":"    raise cfg.RequiredOptError(\u0027auth_url\u0027, group\u003d\u0027keystone_authtoken\u0027)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"def get_ksa_client(context):"}],"source_content_type":"text/x-python","patch_set":1,"id":"53a273b1_0580939f","line":42,"range":{"start_line":34,"start_character":7,"end_line":42,"end_character":70},"in_reply_to":"6f948d12_bb87b65e","updated":"2026-05-28 05:25:59.000000000","message":"Acknowledged","commit_id":"a4729271b73a3cae61dd3a5466ffc1ec1c8ee9e9"}]}
