)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"d374a89b1e951bb56d6757a8e0a91940ad9fb11e","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP Add demo_reader to accounts file when using non-admin credentials"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Id5e7d9d630543c0074761c2fd4f4feb0ddab774d"},{"line_number":10,"context_line":"Signed-off-by: Gregory Thiemonge \u003cgthiemon@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"cf70b691_84596fd6","line":9,"updated":"2026-01-30 07:00:11.000000000","message":"Please add the references to close the bug https://storyboard.openstack.org/#!/story/2011660\nNamely:\n\nStory: 2011660\nTask: 53727","commit_id":"e94ecb2f978cb737237bc6fb31a27c5558a0b1df"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"7aff52ff68d1ea9f25f1429ca345c3e6ad1cbb70","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP Add demo_reader to accounts file when using non-admin credentials"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Id5e7d9d630543c0074761c2fd4f4feb0ddab774d"},{"line_number":10,"context_line":"Signed-off-by: Gregory Thiemonge \u003cgthiemon@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"e32f7fd5_dd024ef0","line":9,"in_reply_to":"cf70b691_84596fd6","updated":"2026-01-30 09:37:34.000000000","message":"Ditto","commit_id":"e94ecb2f978cb737237bc6fb31a27c5558a0b1df"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"f03200aa74e1cdf8d2367ebbd304ff972a679410","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"5143796f_abef3997","updated":"2026-01-30 10:25:10.000000000","message":"```\n2026-01-30 09:46:49.192912 | controller | 2026-01-30 09:46:49.191 123150 ERROR tempest Details: {\u0027code\u0027: 403, \u0027message\u0027: \u0027You are not authorized to perform the requested action: identity:list_projects.\u0027, \u0027title\u0027: \u0027Forbidden\u0027}\n```","commit_id":"a28ae83755142ecf26eeda2c0c82f2b9961fda45"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"f20e769763f5d28901bb72d8ec6bf42de631069c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"51d82f71_9a54cbf2","in_reply_to":"5143796f_abef3997","updated":"2026-01-30 10:48:42.000000000","message":"the demo user cannot list projects, list role assigments, etc..\nI\u0027ll revert my latest changes","commit_id":"a28ae83755142ecf26eeda2c0c82f2b9961fda45"}],"config_tempest/accounts.py":[{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"d374a89b1e951bb56d6757a8e0a91940ad9fb11e","unresolved":true,"context_lines":[{"line_number":55,"context_line":"    # tests."},{"line_number":56,"context_line":"    # To mitigate this issue, also add the demo_reader user to the acccounts"},{"line_number":57,"context_line":"    # file (same project and same password)"},{"line_number":58,"context_line":"    if username \u003d\u003d \"demo\":"},{"line_number":59,"context_line":"        accounts.append({"},{"line_number":60,"context_line":"            \u0027username\u0027: \"demo_reader\","},{"line_number":61,"context_line":"            \"project_name\": project_name,"}],"source_content_type":"text/x-python","patch_set":1,"id":"72e020ce_920b0fae","line":58,"updated":"2026-01-30 07:00:11.000000000","message":"I would always add this user with the name username + \u0027_reader\u0027","commit_id":"e94ecb2f978cb737237bc6fb31a27c5558a0b1df"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"7c2e947d20a404b5d9ce589db251abd8706a247d","unresolved":true,"context_lines":[{"line_number":65,"context_line":"    if not any(r in user_roles for r in [\"admin\", \"reader\"]):"},{"line_number":66,"context_line":"        LOG.info(\"User \u0027%s\u0027 doesn\u0027t have the \u0027reader\u0027 role.\", username)"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        reader_username \u003d \"%s_reader\" % username"},{"line_number":69,"context_line":"        if has_user(clients, reader_username):"},{"line_number":70,"context_line":"            LOG.info(\"Adding user \u0027%s\u0027 to accounts file\", reader_username)"},{"line_number":71,"context_line":"            accounts.append({"}],"source_content_type":"text/x-python","patch_set":2,"id":"738dd273_b27725e5","line":68,"range":{"start_line":68,"start_character":8,"end_line":68,"end_character":48},"updated":"2026-01-30 10:21:48.000000000","message":"I\u0027m wondering if we could just use any user in project_name that has the reader role instead of expecting that \u003cusername\u003e_reader exists","commit_id":"a28ae83755142ecf26eeda2c0c82f2b9961fda45"}],"config_tempest/tests/test_accounts.py":[{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"7aff52ff68d1ea9f25f1429ca345c3e6ad1cbb70","unresolved":true,"context_lines":[{"line_number":54,"context_line":"    @mock.patch(\u0027config_tempest.accounts.get_user_roles\u0027)"},{"line_number":55,"context_line":"    @mock.patch(\u0027config_tempest.accounts.has_user\u0027)"},{"line_number":56,"context_line":"    @mock.patch(\u0027yaml.safe_dump\u0027)"},{"line_number":57,"context_line":"    def test_write_accounts_file(self, mock_safe_dump, mock_has_user,"},{"line_number":58,"context_line":"                                 mock_get_user_roles):"},{"line_number":59,"context_line":"        path \u003d \"./etc/accounts.yaml\""},{"line_number":60,"context_line":"        main.set_options(self.conf, None, False, \"\", accounts_path\u003dpath)"}],"source_content_type":"text/x-python","patch_set":2,"id":"c777b59d_fd3425ec","line":57,"updated":"2026-01-30 09:37:34.000000000","message":"isn\u0027t this test really 3 different tests now?","commit_id":"a28ae83755142ecf26eeda2c0c82f2b9961fda45"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"1523b7f138badc3183118470ca9d1d1dcb255405","unresolved":true,"context_lines":[{"line_number":54,"context_line":"    @mock.patch(\u0027config_tempest.accounts.get_user_roles\u0027)"},{"line_number":55,"context_line":"    @mock.patch(\u0027config_tempest.accounts.has_user\u0027)"},{"line_number":56,"context_line":"    @mock.patch(\u0027yaml.safe_dump\u0027)"},{"line_number":57,"context_line":"    def test_write_accounts_file(self, mock_safe_dump, mock_has_user,"},{"line_number":58,"context_line":"                                 mock_get_user_roles):"},{"line_number":59,"context_line":"        path \u003d \"./etc/accounts.yaml\""},{"line_number":60,"context_line":"        main.set_options(self.conf, None, False, \"\", accounts_path\u003dpath)"}],"source_content_type":"text/x-python","patch_set":2,"id":"88392637_2194609e","line":57,"in_reply_to":"c777b59d_fd3425ec","updated":"2026-01-30 10:19:51.000000000","message":"yeah, I can split it","commit_id":"a28ae83755142ecf26eeda2c0c82f2b9961fda45"}]}
