)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"2a89a156bddf8b5727df37baf75a9999b72ac433","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d4299fde_9279a651","updated":"2026-05-02 04:42:52.000000000","message":"This should help in my series testing and doing removal of tenant_id from neutron:\n\nhttps://review.opendev.org/c/openstack/neutron/+/986962","commit_id":"e280393091b36abd66f70751cb29f32060b94db9"},{"author":{"_account_id":32704,"name":"Alfredo Garcia","email":"alfrgarc@redhat.com","username":"alfrgarc"},"change_message_id":"11eea1208e7095aaf78dd2416b59e3e771e11df0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ab43e58b_b3afb060","updated":"2026-05-05 12:05:15.000000000","message":"Well written change, LGTM","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"65f92bfb0ceb643d23380dd7a3d9db07125edcef","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"23934a49_265a5ecb","updated":"2026-05-06 17:39:43.000000000","message":"overall lgtm but let\u0027s not change the test name or public interfaces but code change to call neutron with project_id is ok.","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"327e0081ec0d1d5a8eac5e60f5f71cb764e40f19","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"2b0d369e_d91f5220","updated":"2026-05-04 11:37:04.000000000","message":"recheck\npost_failure is not related","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"90ca56f3b09c96d07e09dd49ceca99abd212ba8d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"cc158bfc_be499328","updated":"2026-05-02 16:23:13.000000000","message":"recheck Network is unreachable failure","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"2854aa3c532bba9ad8257bc1a27d159165779de1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"7e6e953a_e0d2827f","updated":"2026-05-03 17:47:16.000000000","message":"recheck POST_FAILURE","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"3222df69762b4808516427a994fee7082d806044","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b83ea374_f84d0356","updated":"2026-05-02 22:20:13.000000000","message":"recheck POST_FAILURE","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"e0dcceb624e294f726635d9cae542ed9855587c4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"d3599059_3a17f918","updated":"2026-05-05 02:41:55.000000000","message":"recheck ironic job fixed","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":32704,"name":"Alfredo Garcia","email":"alfrgarc@redhat.com","username":"alfrgarc"},"change_message_id":"57c5b8812b163306235b329b0ab74a037973a666","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"91c60a8e_157606f8","updated":"2026-05-07 15:00:41.000000000","message":"LGTM","commit_id":"593f7bf60a93229b5caaa8fd2cdd299e6a1d252a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"0236010361652671cef3520cceeae52b30165175","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"d11343c4_aa0e10da","updated":"2026-05-08 20:34:40.000000000","message":"lgtm 2024-2 jobs are broken as it is EOL. I will approve it once fix is merged https://review.opendev.org/c/openstack/tempest/+/987905/1","commit_id":"593f7bf60a93229b5caaa8fd2cdd299e6a1d252a"}],"tempest/api/network/admin/test_floating_ips_admin_actions.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"65f92bfb0ceb643d23380dd7a3d9db07125edcef","unresolved":true,"context_lines":[{"line_number":98,"context_line":"        self.assertNotIn(floating_ip_alt[\u0027id\u0027], floating_ip_ids)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    @decorators.idempotent_id(\u002732727cc3-abe2-4485-a16e-48f2d54c14f2\u0027)"},{"line_number":101,"context_line":"    def test_create_list_show_floating_ip_with_tenant_id_by_admin(self):"},{"line_number":102,"context_line":"        \"\"\"Verify if admin can create/list/show floating ip with tenant id\"\"\""},{"line_number":103,"context_line":"        # Creates a floating IP"},{"line_number":104,"context_line":"        body \u003d self.admin_floating_ips_client.create_floatingip("},{"line_number":105,"context_line":"            floating_network_id\u003dself.ext_net_id,"}],"source_content_type":"text/x-python","patch_set":2,"id":"330f8154_1b385ac3","side":"PARENT","line":102,"range":{"start_line":101,"start_character":0,"end_line":102,"end_character":77},"updated":"2026-05-06 17:39:43.000000000","message":"I will avoid the test name change as it can break the jobs or anyone using it in regex. Test is testing the project_id so that should be enough. I know name should stat \u0027project\u0027 but changing it now is not worth.","commit_id":"70c4143230559059ed0839956a2a153b36573c29"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"030f046830c4d8190b18ea6b71e7fdd7142cc32e","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        self.assertNotIn(floating_ip_alt[\u0027id\u0027], floating_ip_ids)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    @decorators.idempotent_id(\u002732727cc3-abe2-4485-a16e-48f2d54c14f2\u0027)"},{"line_number":101,"context_line":"    def test_create_list_show_floating_ip_with_tenant_id_by_admin(self):"},{"line_number":102,"context_line":"        \"\"\"Verify if admin can create/list/show floating ip with tenant id\"\"\""},{"line_number":103,"context_line":"        # Creates a floating IP"},{"line_number":104,"context_line":"        body \u003d self.admin_floating_ips_client.create_floatingip("},{"line_number":105,"context_line":"            floating_network_id\u003dself.ext_net_id,"}],"source_content_type":"text/x-python","patch_set":2,"id":"e98c9ee5_3ddf4233","side":"PARENT","line":102,"range":{"start_line":101,"start_character":0,"end_line":102,"end_character":77},"in_reply_to":"330f8154_1b385ac3","updated":"2026-05-06 18:38:08.000000000","message":"Done","commit_id":"70c4143230559059ed0839956a2a153b36573c29"}],"tempest/api/network/admin/test_metering_extensions.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"65f92bfb0ceb643d23380dd7a3d9db07125edcef","unresolved":false,"context_lines":[{"line_number":126,"context_line":"            self.metering_label[\u0027id\u0027])"},{"line_number":127,"context_line":"        metering_label \u003d body[\u0027metering_label\u0027]"},{"line_number":128,"context_line":"        self.assertEqual(self.metering_label[\u0027id\u0027], metering_label[\u0027id\u0027])"},{"line_number":129,"context_line":"        self.assertEqual(self.metering_label[\u0027project_id\u0027],"},{"line_number":130,"context_line":"                         metering_label[\u0027project_id\u0027])"},{"line_number":131,"context_line":"        self.assertEqual(self.metering_label[\u0027name\u0027], metering_label[\u0027name\u0027])"},{"line_number":132,"context_line":"        self.assertEqual(self.metering_label[\u0027description\u0027],"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba515bc2_83d81384","line":129,"range":{"start_line":129,"start_character":0,"end_line":129,"end_character":59},"updated":"2026-05-06 17:39:43.000000000","message":"++","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"}],"tempest/lib/common/cred_provider.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"65f92bfb0ceb643d23380dd7a3d9db07125edcef","unresolved":true,"context_lines":[{"line_number":159,"context_line":"    def is_role_available(self, role):"},{"line_number":160,"context_line":"        return"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    def cleanup_default_secgroup(self, security_group_client, project):"},{"line_number":163,"context_line":"        resp_body \u003d security_group_client.list_security_groups("},{"line_number":164,"context_line":"            project_id\u003dproject,"},{"line_number":165,"context_line":"            name\u003d\"default\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"f5681ca0_90027166","line":162,"range":{"start_line":162,"start_character":0,"end_line":162,"end_character":71},"updated":"2026-05-06 17:39:43.000000000","message":"This is public and stable interface from Tempest which can be used outside of tempest so it will break the tempest users (tempest plugins maybe).\n\nLet\u0027s not change the name but only change the neutron API calling which ids L164","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"030f046830c4d8190b18ea6b71e7fdd7142cc32e","unresolved":false,"context_lines":[{"line_number":159,"context_line":"    def is_role_available(self, role):"},{"line_number":160,"context_line":"        return"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    def cleanup_default_secgroup(self, security_group_client, project):"},{"line_number":163,"context_line":"        resp_body \u003d security_group_client.list_security_groups("},{"line_number":164,"context_line":"            project_id\u003dproject,"},{"line_number":165,"context_line":"            name\u003d\"default\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"e647d09c_d3814f89","line":162,"range":{"start_line":162,"start_character":0,"end_line":162,"end_character":71},"in_reply_to":"f5681ca0_90027166","updated":"2026-05-06 18:38:08.000000000","message":"codesearch didn\u0027t find any user outside of this repo, but I can leave it.","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"65f92bfb0ceb643d23380dd7a3d9db07125edcef","unresolved":true,"context_lines":[{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    def cleanup_default_secgroup(self, security_group_client, project):"},{"line_number":163,"context_line":"        resp_body \u003d security_group_client.list_security_groups("},{"line_number":164,"context_line":"            project_id\u003dproject,"},{"line_number":165,"context_line":"            name\u003d\"default\")"},{"line_number":166,"context_line":"        secgroups_to_delete \u003d resp_body[\u0027security_groups\u0027]"},{"line_number":167,"context_line":"        for secgroup in secgroups_to_delete:"}],"source_content_type":"text/x-python","patch_set":2,"id":"a614c1ec_58d1215f","line":164,"range":{"start_line":164,"start_character":11,"end_line":164,"end_character":22},"updated":"2026-05-06 17:39:43.000000000","message":"this should be enough \n\nproject_id\u003dtenant","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"030f046830c4d8190b18ea6b71e7fdd7142cc32e","unresolved":false,"context_lines":[{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    def cleanup_default_secgroup(self, security_group_client, project):"},{"line_number":163,"context_line":"        resp_body \u003d security_group_client.list_security_groups("},{"line_number":164,"context_line":"            project_id\u003dproject,"},{"line_number":165,"context_line":"            name\u003d\"default\")"},{"line_number":166,"context_line":"        secgroups_to_delete \u003d resp_body[\u0027security_groups\u0027]"},{"line_number":167,"context_line":"        for secgroup in secgroups_to_delete:"}],"source_content_type":"text/x-python","patch_set":2,"id":"bbc0aae9_1eab49bc","line":164,"range":{"start_line":164,"start_character":11,"end_line":164,"end_character":22},"in_reply_to":"a614c1ec_58d1215f","updated":"2026-05-06 18:38:08.000000000","message":"Done","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"}],"tempest/lib/common/dynamic_creds.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"65f92bfb0ceb643d23380dd7a3d9db07125edcef","unresolved":false,"context_lines":[{"line_number":271,"context_line":"        creds \u003d self.creds_client.get_credentials(**cred_params)"},{"line_number":272,"context_line":"        return cred_provider.TestResources(creds)"},{"line_number":273,"context_line":""},{"line_number":274,"context_line":"    def _create_network_resources(self, project_id):"},{"line_number":275,"context_line":"        \"\"\"The function creates network resources in the given project."},{"line_number":276,"context_line":""},{"line_number":277,"context_line":"        The function checks if network_resources class member is empty,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ac52d7d2_4a7723e0","line":274,"range":{"start_line":274,"start_character":0,"end_line":274,"end_character":52},"updated":"2026-05-06 17:39:43.000000000","message":"++, this is internal function so lgtm","commit_id":"f30cad27a4baa80f51b728f601b931d70ab07990"}]}
