)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"91176b62e7ab791d62bf22ff6cc439443634b5d9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"7edea265_783d5855","updated":"2026-03-12 14:30:00.000000000","message":"Found one small issue, but generally LGTM, thanks","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":34118,"name":"Arnau Verdaguer","email":"averdagu@redhat.com","username":"averdaguer"},"change_message_id":"d8230e17082ae194b80bb92f40f2b43b3d967161","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b7c6c1b9_69b29df6","updated":"2026-03-12 10:44:57.000000000","message":"Nevermind, I missread the code and I did not realized the metadata_conf_file was only used on is_devstack. Looks good to me","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"2db14d5f6d76a40211bc60f66441ed7f9f28fde8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"fcaf3b71_874db706","updated":"2026-03-12 10:35:52.000000000","message":"Testing in D/S ci-fw-testproject MR1797","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"1adb3685ae68bd65efc2107d819ffbad15362231","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"cc53b85a_f5221f35","updated":"2026-03-12 13:47:59.000000000","message":"recheck whitebox-neutron-tempest-plugin-ovn","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"2a555135020a4dddf146344383974970b4eadc6e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"73aa5e96_cde19775","updated":"2026-03-12 15:55:19.000000000","message":"Results look good on uni-eta, if it helps:\n```\nsh-5.1$ stestr run --serial test_metadata_rate_limiting\n{0} whitebox_neutron_tempest_plugin.tests.scenario.test_metadata_rate_limiting.TestMetadataRateLimiting.test_metadata_base_and_burst_rate_limiting [151.955894s] ... ok\n{0} whitebox_neutron_tempest_plugin.tests.scenario.test_metadata_rate_limiting.TestMetadataRateLimiting.test_metadata_burst_rate_limiting [147.156614s] ... ok\n{0} whitebox_neutron_tempest_plugin.tests.scenario.test_metadata_rate_limiting.TestMetadataRateLimiting.test_metadata_rate_limiting [72.361952s] ... ok\n```","commit_id":"b682fcc6208571b0b14947bf2bc225cc1cafa854"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"e1fe1d5d0be6965b4accd92f8f4a4beeab2d7d47","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e7cc4843_c8664189","updated":"2026-03-12 15:46:23.000000000","message":"Thank you, LGTM","commit_id":"b682fcc6208571b0b14947bf2bc225cc1cafa854"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"8feae92895bce09d7a1f2d5c833fdcb921ab961a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"1bab4ca8_858b171b","in_reply_to":"73aa5e96_cde19775","updated":"2026-03-12 15:56:51.000000000","message":"just noticed, further changes needed noticed [1] by @ralonsoh@redhat.com, so ignore results.\n[1]\nhttps://review.opendev.org/c/x/whitebox-neutron-tempest-plugin/+/980224/comment/4a18b8d1_d32da5d8/","commit_id":"b682fcc6208571b0b14947bf2bc225cc1cafa854"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"622944f64319dc5cb29d44d8925bad6bb686a7b1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"99b2b9da_0f31adde","updated":"2026-03-20 15:30:24.000000000","message":"Maor, please check ci-fw-testproject MR!1797. CI is passing now","commit_id":"be08bbdc65cdd0bd34ae9781f0facd38ad1aa1d3"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"831620e860e8658fd27eb6c0925fa80350ecab66","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"f37169c4_d8d1bc5f","updated":"2026-03-22 14:50:21.000000000","message":"Tnx, LGTM","commit_id":"be08bbdc65cdd0bd34ae9781f0facd38ad1aa1d3"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"04d708d2391a42ad261aaffe6da4766d56d1024a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0f94abc6_2b82808a","updated":"2026-03-13 11:51:10.000000000","message":"recheck whitebox-neutron-tempest-plugin-ovn","commit_id":"be08bbdc65cdd0bd34ae9781f0facd38ad1aa1d3"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"62cf16f8be969ccab6003aef219375ab373d0cb6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"15ec595b_2d58fd8d","updated":"2026-03-23 06:04:40.000000000","message":"recheck whitebox-neutron-tempest-plugin-ovn","commit_id":"be08bbdc65cdd0bd34ae9781f0facd38ad1aa1d3"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7aff3421ff8b03d259be3066f67046c63a6b58bf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"4d335939_265fbe29","updated":"2026-03-13 08:23:02.000000000","message":"recheck whitebox-neutron-tempest-plugin-ovn","commit_id":"be08bbdc65cdd0bd34ae9781f0facd38ad1aa1d3"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"9647b91189cd27f27c6af51556be15a163307bf4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"f5e27b0a_902a251d","updated":"2026-03-22 14:57:08.000000000","message":"thank you, results and patch look good as far as I can tell, starting gates","commit_id":"be08bbdc65cdd0bd34ae9781f0facd38ad1aa1d3"}],"whitebox_neutron_tempest_plugin/tests/scenario/test_metadata_rate_limiting.py":[{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"3c70d873c54b5ed5660518c564ed36b55de689ec","unresolved":true,"context_lines":[{"line_number":54,"context_line":"                cls.metadata_conf_file \u003d ("},{"line_number":55,"context_line":"                    \u0027/etc/neutron/plugins/ml2/ovn_agent.ini\u0027)"},{"line_number":56,"context_line":"            else:"},{"line_number":57,"context_line":"                cls.fail(\u0027Unknown metadata service\u0027)"},{"line_number":58,"context_line":"        else:"},{"line_number":59,"context_line":"            # TODO(ralonsoh): make constants for the service names."},{"line_number":60,"context_line":"            if cls._metadata_service_name \u003d\u003d \u0027ovn metadata agent\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"b0de3011_23319f58","line":57,"range":{"start_line":57,"start_character":0,"end_line":57,"end_character":52},"updated":"2026-03-12 14:30:42.000000000","message":"ditto","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"63d5a38c744f13362a6173287b6948d4b4ba96f7","unresolved":false,"context_lines":[{"line_number":54,"context_line":"                cls.metadata_conf_file \u003d ("},{"line_number":55,"context_line":"                    \u0027/etc/neutron/plugins/ml2/ovn_agent.ini\u0027)"},{"line_number":56,"context_line":"            else:"},{"line_number":57,"context_line":"                cls.fail(\u0027Unknown metadata service\u0027)"},{"line_number":58,"context_line":"        else:"},{"line_number":59,"context_line":"            # TODO(ralonsoh): make constants for the service names."},{"line_number":60,"context_line":"            if cls._metadata_service_name \u003d\u003d \u0027ovn metadata agent\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"ffbef4c7_7c07e3e5","line":57,"range":{"start_line":57,"start_character":0,"end_line":57,"end_character":52},"in_reply_to":"b0de3011_23319f58","updated":"2026-03-12 15:44:13.000000000","message":"Done","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":34118,"name":"Arnau Verdaguer","email":"averdagu@redhat.com","username":"averdaguer"},"change_message_id":"af3510f46bfde0e019f4b4482f4fc5ae09a39c72","unresolved":true,"context_lines":[{"line_number":60,"context_line":"            if cls._metadata_service_name \u003d\u003d \u0027ovn metadata agent\u0027:"},{"line_number":61,"context_line":"                cls.metadata_conf_file \u003d ("},{"line_number":62,"context_line":"                    \u0027{}\u0027"},{"line_number":63,"context_line":"                    \u0027neutron-ovn-metadata-agent/\u0027"},{"line_number":64,"context_line":"                    \u002701-neutron-ovn-metadata-agent.conf\u0027.format("},{"line_number":65,"context_line":"                        WB_CONF.compute_root_config_dir)"},{"line_number":66,"context_line":"                )"}],"source_content_type":"text/x-python","patch_set":1,"id":"b5d93bb3_8e22ea4b","line":63,"range":{"start_line":63,"start_character":21,"end_line":63,"end_character":47},"updated":"2026-03-12 10:43:40.000000000","message":"Shouldn\u0027t this be cls.metadata_conf_file?","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"d1abcaf0cdac415d816e75bb59827441573ebeb9","unresolved":false,"context_lines":[{"line_number":60,"context_line":"            if cls._metadata_service_name \u003d\u003d \u0027ovn metadata agent\u0027:"},{"line_number":61,"context_line":"                cls.metadata_conf_file \u003d ("},{"line_number":62,"context_line":"                    \u0027{}\u0027"},{"line_number":63,"context_line":"                    \u0027neutron-ovn-metadata-agent/\u0027"},{"line_number":64,"context_line":"                    \u002701-neutron-ovn-metadata-agent.conf\u0027.format("},{"line_number":65,"context_line":"                        WB_CONF.compute_root_config_dir)"},{"line_number":66,"context_line":"                )"}],"source_content_type":"text/x-python","patch_set":1,"id":"b4c40661_85da1209","line":63,"range":{"start_line":63,"start_character":21,"end_line":63,"end_character":47},"in_reply_to":"b5d93bb3_8e22ea4b","updated":"2026-03-12 10:47:12.000000000","message":"Done","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"91176b62e7ab791d62bf22ff6cc439443634b5d9","unresolved":true,"context_lines":[{"line_number":73,"context_line":"                )"},{"line_number":74,"context_line":"            else:"},{"line_number":75,"context_line":"                # NOTE(ralonsoh): in podified envs, only ML2/OVN is supported."},{"line_number":76,"context_line":"                cls.fail(\u0027Unknown metadata service\u0027)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        # OSP resources"},{"line_number":79,"context_line":"        cls.rand_name \u003d data_utils.rand_name("}],"source_content_type":"text/x-python","patch_set":1,"id":"2770a42d_46481601","line":76,"range":{"start_line":76,"start_character":16,"end_line":76,"end_character":24},"updated":"2026-03-12 14:30:00.000000000","message":"I recall `cls.fail` doesn\u0027t work for `cls` but only for instance `self.fail`, tried today and seems it still doesn\u0027t work:\n```\n...\n      File \"/usr/lib/python3.9/site-packages/whitebox_neutron_tempest_plugin/tests/scenario/base.py\", line 591, in discover_nodes\n    cls.fail(\u0027DEBUG FAILURE using `cls.fail`\u0027) # DEBUG\n\n      File \"/usr/lib64/python3.9/unittest/case.py\", line 676, in fail\n    raise self.failureException(msg)\n\n    AttributeError: \u0027str\u0027 object has no attribute \u0027failureException\u0027\n```","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"299c01a454b0f4d363ff8b4883e5d05ec4dafcbf","unresolved":false,"context_lines":[{"line_number":73,"context_line":"                )"},{"line_number":74,"context_line":"            else:"},{"line_number":75,"context_line":"                # NOTE(ralonsoh): in podified envs, only ML2/OVN is supported."},{"line_number":76,"context_line":"                cls.fail(\u0027Unknown metadata service\u0027)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        # OSP resources"},{"line_number":79,"context_line":"        cls.rand_name \u003d data_utils.rand_name("}],"source_content_type":"text/x-python","patch_set":1,"id":"d6976fbc_897c418b","line":76,"range":{"start_line":76,"start_character":16,"end_line":76,"end_character":24},"in_reply_to":"2770a42d_46481601","updated":"2026-03-12 14:35:14.000000000","message":"Ok, I need to find a way to stop the method here. I can raise an exception, this should never happen.","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"4587be8094710a1c981834655817dfaf4798daaf","unresolved":false,"context_lines":[{"line_number":73,"context_line":"                )"},{"line_number":74,"context_line":"            else:"},{"line_number":75,"context_line":"                # NOTE(ralonsoh): in podified envs, only ML2/OVN is supported."},{"line_number":76,"context_line":"                cls.fail(\u0027Unknown metadata service\u0027)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        # OSP resources"},{"line_number":79,"context_line":"        cls.rand_name \u003d data_utils.rand_name("}],"source_content_type":"text/x-python","patch_set":1,"id":"34069451_693cc794","line":76,"range":{"start_line":76,"start_character":16,"end_line":76,"end_character":24},"in_reply_to":"d6976fbc_897c418b","updated":"2026-03-12 14:46:52.000000000","message":"When had such case I just raise RuntimeError if setup condition related or AssertionError if test check related.","commit_id":"707c3acb6a60c006d34ed425bd67881e8e2ff6ef"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"1b44d1f4b867da16bfb82e01c3635363b0980b86","unresolved":true,"context_lines":[{"line_number":45,"context_line":"            cls.metadata_service_name, n[\u0027client\u0027])]"},{"line_number":46,"context_line":"        if cls.is_devstack:"},{"line_number":47,"context_line":"            # TODO(ralonsoh): make constants for the service names."},{"line_number":48,"context_line":"            if cls._metadata_service_name \u003d\u003d \u0027neutron l3 agent\u0027:"},{"line_number":49,"context_line":"                cls.metadata_conf_file \u003d \u0027/etc/neutron/metadata_agent.ini\u0027"},{"line_number":50,"context_line":"            elif cls._metadata_service_name \u003d\u003d \u0027ovn metadata agent\u0027:"},{"line_number":51,"context_line":"                cls.metadata_conf_file \u003d ("}],"source_content_type":"text/x-python","patch_set":2,"id":"4a18b8d1_d32da5d8","line":48,"range":{"start_line":48,"start_character":19,"end_line":48,"end_character":41},"updated":"2026-03-12 15:47:07.000000000","message":"This is wrong: I need to use the property `metadata_service_name`, not the private variable.","commit_id":"b682fcc6208571b0b14947bf2bc225cc1cafa854"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"aaf5267dff97157cd1a3491f9299228fc890ac98","unresolved":false,"context_lines":[{"line_number":45,"context_line":"            cls.metadata_service_name, n[\u0027client\u0027])]"},{"line_number":46,"context_line":"        if cls.is_devstack:"},{"line_number":47,"context_line":"            # TODO(ralonsoh): make constants for the service names."},{"line_number":48,"context_line":"            if cls._metadata_service_name \u003d\u003d \u0027neutron l3 agent\u0027:"},{"line_number":49,"context_line":"                cls.metadata_conf_file \u003d \u0027/etc/neutron/metadata_agent.ini\u0027"},{"line_number":50,"context_line":"            elif cls._metadata_service_name \u003d\u003d \u0027ovn metadata agent\u0027:"},{"line_number":51,"context_line":"                cls.metadata_conf_file \u003d ("}],"source_content_type":"text/x-python","patch_set":2,"id":"a44d96f2_8f0a8178","line":48,"range":{"start_line":48,"start_character":19,"end_line":48,"end_character":41},"in_reply_to":"4a18b8d1_d32da5d8","updated":"2026-03-12 15:58:05.000000000","message":"Done","commit_id":"b682fcc6208571b0b14947bf2bc225cc1cafa854"}]}
