)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a6031cb18af05063471a5128a93d85dd84be8b8f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"ef209238_19fc2e5f","updated":"2022-01-21 15:26:55.000000000","message":"Updated test according to review comments.","commit_id":"634d09cf77461e803bb3d86a4d4ba87ab5bb541a"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"1df2af23_67b95fcf","updated":"2022-01-29 00:52:21.000000000","message":"A few comments on this patch.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"6f3ffdfc338bfae8e8f7189b2a3fc2730401c331","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"2875728e_395a9b4d","updated":"2022-01-24 15:18:07.000000000","message":"I adjusted the tests so that different tests test different features. The test_load_balancer_ipv[46]_create_pool_members() tests test everything except health monitors.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"24e30412c56e547cf25cef31b0736f77b62ac404","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"6b64180b_aa19479c","updated":"2022-01-25 07:43:06.000000000","message":"recheck","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"2ee32217_e7752f03","updated":"2022-01-31 11:00:25.000000000","message":"Some updates based on review comments.","commit_id":"68eb64e83d92f4c722920603637c6871ac210862"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"fdf4a2f4a076ee590c8a6ce5f8ed390627889cdf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"11f2bce0_01028ad7","updated":"2022-02-10 08:00:51.000000000","message":"recheck","commit_id":"7d590ecff023f392bc62f4b672d1cce949422e16"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"3fab6b1dfc06044781de4e0021a3c437bd707cff","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"174b4112_30c054a5","updated":"2022-02-10 08:07:25.000000000","message":"recheck","commit_id":"7d590ecff023f392bc62f4b672d1cce949422e16"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"1fac5ccdf804c3b5e0905f73f6f88903fef32a74","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"669ffb0a_47da5854","updated":"2022-02-10 11:16:26.000000000","message":"recheck","commit_id":"7d590ecff023f392bc62f4b672d1cce949422e16"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"532a2e97e0829cfbf18cfc0eda8397dfd1780b6d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"ca632346_3a0e5164","updated":"2022-02-09 15:31:17.000000000","message":"recheck","commit_id":"7d590ecff023f392bc62f4b672d1cce949422e16"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"e7a90f5b840ce761f34039d6de8ff9e979b23dec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"ebf5e458_37b7ab6b","updated":"2022-02-07 08:34:12.000000000","message":"recheck","commit_id":"7d590ecff023f392bc62f4b672d1cce949422e16"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"81a72019c9bcdc7b4d52cc28b9971920ef305754","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"1344e048_75922831","updated":"2022-02-11 13:52:58.000000000","message":"recheck","commit_id":"9fd9ddaf8ebac1f577f53fbbab9bb958f217db55"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a6e0113549ee6bf14009e8016073d0ce7fd56fee","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":17,"id":"c25cd220_ab6f63dd","updated":"2022-02-11 17:22:17.000000000","message":"recheck","commit_id":"ebe073d9b1600ecc77ae91d640c42fdd7a12bbe1"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"c936cbbba5c5af1d103f79e64f4da4e499ac461c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"67723d1c_11c2d46b","updated":"2022-03-14 17:15:31.000000000","message":"recheck","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"2fb04585c009644d19c5029693d9ae11465ddd7c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"57a9e15c_b8f8f17d","updated":"2022-12-02 16:47:39.000000000","message":"Also I tested it a little bit on my devstack env and it worked fine so far","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"66dad901a5e89210f165c2207e63904d0241bf11","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"601706b3_77e66fa1","updated":"2022-12-02 16:46:57.000000000","message":"Except for a nit, looks good to me.","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"10fff720551ebd9c0dad39d4744b0d9db49dc583","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"e6f5e90d_76d4213b","updated":"2022-12-22 14:57:13.000000000","message":"recheck re-run test","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a97219e29c0916d570c75cc0536ca04596537a39","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"7bbbac98_343feb97","updated":"2022-07-07 13:23:42.000000000","message":"recheck regenerate CI data","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"c58f984d4ebffbc0635f9096f801fc95a302caf3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"4d747b81_6d50dd19","updated":"2022-12-23 08:09:04.000000000","message":"recheck probably random failure","commit_id":"ccaf24c1e23ba3f507e8f04db6711fa6f8be6672"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"014e7ecc18a081198b8c2844fb2ac4acc98024e5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"11f3fc6c_6c86f3c0","updated":"2023-01-12 10:27:13.000000000","message":"recheck getting new CI results","commit_id":"00d0bf91c67400a2b47c1017daa9fc8563d5a8b9"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"24ef3c6221caf0424dbd89eac4834cc39a3dc42c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":24,"id":"40ca486a_33202a66","updated":"2024-01-29 15:04:31.000000000","message":"recheck get new CI data","commit_id":"852b58210742e67970fe9db71e47cc327b05a130"}],"octavia_tempest_plugin/config.py":[{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"c686b6fd97e79c2dc1b3dc2f165faf45d9a8bdf6","unresolved":true,"context_lines":[{"line_number":171,"context_line":"                    \u0027all IPv6 tests (VIP, members, etc.). Optional and only \u0027"},{"line_number":172,"context_line":"                    \u0027valid if test_network_override is set.\u0027),"},{"line_number":173,"context_line":"    cfg.StrOpt(\u0027lb_create_member_ipv4_subnet_cidr\u0027,"},{"line_number":174,"context_line":"               default\u003d\u0027192.0.2.0/24\u0027,"},{"line_number":175,"context_line":"               help\u003d\u0027CIDR format subnet to use for create load balancer \u0027"},{"line_number":176,"context_line":"                    \u0027tests.\u0027),"},{"line_number":177,"context_line":"    cfg.StrOpt(\u0027lb_create_member_ipv6_subnet_cidr\u0027,"}],"source_content_type":"text/x-python","patch_set":23,"id":"3ea1577c_ea608797","line":174,"range":{"start_line":174,"start_character":24,"end_line":174,"end_character":36},"updated":"2023-01-12 11:02:38.000000000","message":"those ip addresses are hardcoded in the other API tests, I\u0027m wondering if we should avoid to add new options for those addresses.\nI don\u0027t think we need to allow the user to override the default value.","commit_id":"00d0bf91c67400a2b47c1017daa9fc8563d5a8b9"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"2095f44069f26c426305e83845ce22df7ab339c1","unresolved":true,"context_lines":[{"line_number":171,"context_line":"                    \u0027all IPv6 tests (VIP, members, etc.). Optional and only \u0027"},{"line_number":172,"context_line":"                    \u0027valid if test_network_override is set.\u0027),"},{"line_number":173,"context_line":"    cfg.StrOpt(\u0027lb_create_member_ipv4_subnet_cidr\u0027,"},{"line_number":174,"context_line":"               default\u003d\u0027192.0.2.0/24\u0027,"},{"line_number":175,"context_line":"               help\u003d\u0027CIDR format subnet to use for create load balancer \u0027"},{"line_number":176,"context_line":"                    \u0027tests.\u0027),"},{"line_number":177,"context_line":"    cfg.StrOpt(\u0027lb_create_member_ipv6_subnet_cidr\u0027,"}],"source_content_type":"text/x-python","patch_set":23,"id":"7d5f7d89_707c669f","line":174,"range":{"start_line":174,"start_character":24,"end_line":174,"end_character":36},"in_reply_to":"3ea1577c_ea608797","updated":"2023-01-12 12:30:22.000000000","message":"It seems we discussed this in https://review.opendev.org/c/openstack/octavia-tempest-plugin/+/824999/comment/cf76e5df_6cab4625/ before.","commit_id":"00d0bf91c67400a2b47c1017daa9fc8563d5a8b9"}],"octavia_tempest_plugin/services/load_balancer/v2/loadbalancer_client.py":[{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"c686b6fd97e79c2dc1b3dc2f165faf45d9a8bdf6","unresolved":true,"context_lines":[{"line_number":41,"context_line":"                            vip_address\u003dUnset, vip_network_id\u003dUnset,"},{"line_number":42,"context_line":"                            vip_port_id\u003dUnset, vip_qos_policy_id\u003dUnset,"},{"line_number":43,"context_line":"                            vip_subnet_id\u003dUnset, return_object_only\u003dTrue,"},{"line_number":44,"context_line":"                            tags\u003dUnset, pools\u003dUnset, availability_zone\u003dUnset):"},{"line_number":45,"context_line":"        \"\"\"Create a loadbalancer."},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        :param name: Human-readable name of the resource."}],"source_content_type":"text/x-python","patch_set":23,"id":"4800e3a6_c6574d79","line":44,"range":{"start_line":44,"start_character":53,"end_line":44,"end_character":76},"updated":"2023-01-12 11:02:38.000000000","message":"is availability_zone needed here?\nit looks like a rebase issue.","commit_id":"00d0bf91c67400a2b47c1017daa9fc8563d5a8b9"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"75dc28c2cdb03a3f7bfcfc630fb41530a6475d78","unresolved":false,"context_lines":[{"line_number":41,"context_line":"                            vip_address\u003dUnset, vip_network_id\u003dUnset,"},{"line_number":42,"context_line":"                            vip_port_id\u003dUnset, vip_qos_policy_id\u003dUnset,"},{"line_number":43,"context_line":"                            vip_subnet_id\u003dUnset, return_object_only\u003dTrue,"},{"line_number":44,"context_line":"                            tags\u003dUnset, pools\u003dUnset, availability_zone\u003dUnset):"},{"line_number":45,"context_line":"        \"\"\"Create a loadbalancer."},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        :param name: Human-readable name of the resource."}],"source_content_type":"text/x-python","patch_set":23,"id":"cb45fc2b_d715ed38","line":44,"range":{"start_line":44,"start_character":53,"end_line":44,"end_character":76},"in_reply_to":"4800e3a6_c6574d79","updated":"2023-11-20 15:43:53.000000000","message":"Acknowledged","commit_id":"00d0bf91c67400a2b47c1017daa9fc8563d5a8b9"}],"octavia_tempest_plugin/tests/api/v2/test_load_balancer.py":[{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"120ac261cbd102216b437d74e9b26514e7f669e4","unresolved":true,"context_lines":[{"line_number":59,"context_line":"        \"\"\"Tests the creation of a fully populated LB\"\"\","},{"line_number":60,"context_line":"        self._test_load_balancer_create(6, fully_populated\u003dTrue)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    def _test_load_balancer_create(self, ip_version: int,"},{"line_number":63,"context_line":"                                   fully_populated: bool \u003d False):"},{"line_number":64,"context_line":"        \"\"\"Tests load balancer create and basic show APIs."},{"line_number":65,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"63241dd8_8ac43386","line":62,"range":{"start_line":62,"start_character":53,"end_line":62,"end_character":56},"updated":"2022-01-20 15:02:06.000000000","message":"not sure about the annotations, any other opinions?","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"30e67ad0f4c096c525e57fc2ba7cbf1bc3a31af9","unresolved":true,"context_lines":[{"line_number":59,"context_line":"        \"\"\"Tests the creation of a fully populated LB\"\"\","},{"line_number":60,"context_line":"        self._test_load_balancer_create(6, fully_populated\u003dTrue)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    def _test_load_balancer_create(self, ip_version: int,"},{"line_number":63,"context_line":"                                   fully_populated: bool \u003d False):"},{"line_number":64,"context_line":"        \"\"\"Tests load balancer create and basic show APIs."},{"line_number":65,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"c9e24abd_e6f0c5c6","line":62,"range":{"start_line":62,"start_character":53,"end_line":62,"end_character":56},"in_reply_to":"63241dd8_8ac43386","updated":"2022-01-28 23:55:47.000000000","message":"I have no problem with us starting to adopt PEP 526. We declare that we are 3.6+ so it is supported.\nThe lack of typing has bit us in the past (i.e. cert required)","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        \"\"\"Tests the creation of a fully populated LB\"\"\","},{"line_number":60,"context_line":"        self._test_load_balancer_create(6, fully_populated\u003dTrue)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    def _test_load_balancer_create(self, ip_version: int,"},{"line_number":63,"context_line":"                                   fully_populated: bool \u003d False):"},{"line_number":64,"context_line":"        \"\"\"Tests load balancer create and basic show APIs."},{"line_number":65,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"3bb29e7c_74a0d2c3","line":62,"range":{"start_line":62,"start_character":53,"end_line":62,"end_character":56},"in_reply_to":"c9e24abd_e6f0c5c6","updated":"2022-01-31 11:00:25.000000000","message":"Ack","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"120ac261cbd102216b437d74e9b26514e7f669e4","unresolved":true,"context_lines":[{"line_number":211,"context_line":"                },"},{"line_number":212,"context_line":"                const.MEMBERS: ["},{"line_number":213,"context_line":"                    {"},{"line_number":214,"context_line":"                        const.ADDRESS: \"8.8.8.8\","},{"line_number":215,"context_line":"                        const.PROTOCOL_PORT: 80"},{"line_number":216,"context_line":"                    },"},{"line_number":217,"context_line":"                    {"}],"source_content_type":"text/x-python","patch_set":9,"id":"dd320748_4a5d100e","line":214,"range":{"start_line":214,"start_character":40,"end_line":214,"end_character":47},"updated":"2022-01-20 15:02:06.000000000","message":"we should use non-valid ip addresses for the tests.\n192.0.2.0/24 (reserved for doc) is widely used in octavia-tempest-plugin","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a6031cb18af05063471a5128a93d85dd84be8b8f","unresolved":false,"context_lines":[{"line_number":211,"context_line":"                },"},{"line_number":212,"context_line":"                const.MEMBERS: ["},{"line_number":213,"context_line":"                    {"},{"line_number":214,"context_line":"                        const.ADDRESS: \"8.8.8.8\","},{"line_number":215,"context_line":"                        const.PROTOCOL_PORT: 80"},{"line_number":216,"context_line":"                    },"},{"line_number":217,"context_line":"                    {"}],"source_content_type":"text/x-python","patch_set":9,"id":"7e8922b7_ab7e357d","line":214,"range":{"start_line":214,"start_character":40,"end_line":214,"end_character":47},"in_reply_to":"dd320748_4a5d100e","updated":"2022-01-21 15:26:55.000000000","message":"Done","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"120ac261cbd102216b437d74e9b26514e7f669e4","unresolved":true,"context_lines":[{"line_number":256,"context_line":"        def _check_members(member_ids, pool_id, addresses, protocol_ports):"},{"line_number":257,"context_line":"            for mid in member_ids:"},{"line_number":258,"context_line":"                member \u003d self.mem_member_client.show_member(mid, pool_id)"},{"line_number":259,"context_line":"                self.assertIn(member[const.ADDRESS], addresses)"},{"line_number":260,"context_line":"                self.assertIn(member[const.PROTOCOL_PORT], protocol_ports)"},{"line_number":261,"context_line":""},{"line_number":262,"context_line":"        def _check_pool(pool_id, kwargs_pool):"},{"line_number":263,"context_line":"            pool \u003d self.mem_pool_client.show_pool(pool_id)"}],"source_content_type":"text/x-python","patch_set":9,"id":"e7bde1ff_39793f51","line":260,"range":{"start_line":259,"start_character":17,"end_line":260,"end_character":74},"updated":"2022-01-20 15:02:06.000000000","message":"You don\u0027t check that the right address is configured with the right port.\nI think it would be better to build a list of tuples with the configured (address, port), then find each observed (address, port) in this list","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a6031cb18af05063471a5128a93d85dd84be8b8f","unresolved":false,"context_lines":[{"line_number":256,"context_line":"        def _check_members(member_ids, pool_id, addresses, protocol_ports):"},{"line_number":257,"context_line":"            for mid in member_ids:"},{"line_number":258,"context_line":"                member \u003d self.mem_member_client.show_member(mid, pool_id)"},{"line_number":259,"context_line":"                self.assertIn(member[const.ADDRESS], addresses)"},{"line_number":260,"context_line":"                self.assertIn(member[const.PROTOCOL_PORT], protocol_ports)"},{"line_number":261,"context_line":""},{"line_number":262,"context_line":"        def _check_pool(pool_id, kwargs_pool):"},{"line_number":263,"context_line":"            pool \u003d self.mem_pool_client.show_pool(pool_id)"}],"source_content_type":"text/x-python","patch_set":9,"id":"43dc614c_6bb460ba","line":260,"range":{"start_line":259,"start_character":17,"end_line":260,"end_character":74},"in_reply_to":"e7bde1ff_39793f51","updated":"2022-01-21 15:26:55.000000000","message":"Done","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"120ac261cbd102216b437d74e9b26514e7f669e4","unresolved":true,"context_lines":[{"line_number":262,"context_line":"        def _check_pool(pool_id, kwargs_pool):"},{"line_number":263,"context_line":"            pool \u003d self.mem_pool_client.show_pool(pool_id)"},{"line_number":264,"context_line":"            for param in (const.NAME, const.PROTOCOL, const.LB_ALGORITHM):"},{"line_number":265,"context_line":"                self.assertEqual(pool[param], kwargs_pool[param])"},{"line_number":266,"context_line":"            return pool"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"        listener_id \u003d lb[const.LISTENERS][0][const.ID]"}],"source_content_type":"text/x-python","patch_set":9,"id":"c6a571ad_863ac49e","line":265,"range":{"start_line":265,"start_character":21,"end_line":265,"end_character":32},"updated":"2022-01-20 15:02:06.000000000","message":"testtool defines this method as assertEqual(expected, observed, message\u003d\u0027\u0027)\npool[param] is the observed value, kwargs_pool the expected value\n\nit matters when testtools displays errors in tempest","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a6031cb18af05063471a5128a93d85dd84be8b8f","unresolved":false,"context_lines":[{"line_number":262,"context_line":"        def _check_pool(pool_id, kwargs_pool):"},{"line_number":263,"context_line":"            pool \u003d self.mem_pool_client.show_pool(pool_id)"},{"line_number":264,"context_line":"            for param in (const.NAME, const.PROTOCOL, const.LB_ALGORITHM):"},{"line_number":265,"context_line":"                self.assertEqual(pool[param], kwargs_pool[param])"},{"line_number":266,"context_line":"            return pool"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"        listener_id \u003d lb[const.LISTENERS][0][const.ID]"}],"source_content_type":"text/x-python","patch_set":9,"id":"2dab4826_af169fe8","line":265,"range":{"start_line":265,"start_character":21,"end_line":265,"end_character":32},"in_reply_to":"c6a571ad_863ac49e","updated":"2022-01-21 15:26:55.000000000","message":"Done","commit_id":"ed2771e598788587f36e521e423eec98881d2160"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"29fcbfed7c2c706ff22575a25c8ac537884c60c3","unresolved":true,"context_lines":[{"line_number":205,"context_line":"                const.NAME: \"rr_pool\","},{"line_number":206,"context_line":"                const.PROTOCOL: const.HTTP,"},{"line_number":207,"context_line":"                const.LB_ALGORITHM: const.LB_ALGORITHM_ROUND_ROBIN,"},{"line_number":208,"context_line":"                const.HEALTH_MONITOR: {"},{"line_number":209,"context_line":"                    const.TYPE: const.HEALTH_MONITOR_HTTP,"},{"line_number":210,"context_line":"                    const.DELAY: 3,"},{"line_number":211,"context_line":"                    const.EXPECTED_CODES: \"200,201,202\","},{"line_number":212,"context_line":"                    const.HTTP_METHOD: const.GET,"},{"line_number":213,"context_line":"                    const.MAX_RETRIES: 2,"},{"line_number":214,"context_line":"                    const.TIMEOUT: 1,"},{"line_number":215,"context_line":"                    const.URL_PATH: \"/index.html\""},{"line_number":216,"context_line":"                },"},{"line_number":217,"context_line":"                const.MEMBERS: ["},{"line_number":218,"context_line":"                    {"},{"line_number":219,"context_line":"                        const.ADDRESS: \"192.0.2.1\","}],"source_content_type":"text/x-python","patch_set":10,"id":"ceb60bee_14161187","line":216,"range":{"start_line":208,"start_character":0,"end_line":216,"end_character":18},"updated":"2022-01-24 09:43:00.000000000","message":"can this be \"optional\", so that it can be tested with drivers not supporting this (like ovn-octavia)","commit_id":"634d09cf77461e803bb3d86a4d4ba87ab5bb541a"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"6f3ffdfc338bfae8e8f7189b2a3fc2730401c331","unresolved":false,"context_lines":[{"line_number":205,"context_line":"                const.NAME: \"rr_pool\","},{"line_number":206,"context_line":"                const.PROTOCOL: const.HTTP,"},{"line_number":207,"context_line":"                const.LB_ALGORITHM: const.LB_ALGORITHM_ROUND_ROBIN,"},{"line_number":208,"context_line":"                const.HEALTH_MONITOR: {"},{"line_number":209,"context_line":"                    const.TYPE: const.HEALTH_MONITOR_HTTP,"},{"line_number":210,"context_line":"                    const.DELAY: 3,"},{"line_number":211,"context_line":"                    const.EXPECTED_CODES: \"200,201,202\","},{"line_number":212,"context_line":"                    const.HTTP_METHOD: const.GET,"},{"line_number":213,"context_line":"                    const.MAX_RETRIES: 2,"},{"line_number":214,"context_line":"                    const.TIMEOUT: 1,"},{"line_number":215,"context_line":"                    const.URL_PATH: \"/index.html\""},{"line_number":216,"context_line":"                },"},{"line_number":217,"context_line":"                const.MEMBERS: ["},{"line_number":218,"context_line":"                    {"},{"line_number":219,"context_line":"                        const.ADDRESS: \"192.0.2.1\","}],"source_content_type":"text/x-python","patch_set":10,"id":"d58e0b24_d096af81","line":216,"range":{"start_line":208,"start_character":0,"end_line":216,"end_character":18},"in_reply_to":"cda93d26_a35b40a5","updated":"2022-01-24 15:18:07.000000000","message":"Ack","commit_id":"634d09cf77461e803bb3d86a4d4ba87ab5bb541a"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"08e198c7026646d0d3b84e0399155086242197e1","unresolved":true,"context_lines":[{"line_number":205,"context_line":"                const.NAME: \"rr_pool\","},{"line_number":206,"context_line":"                const.PROTOCOL: const.HTTP,"},{"line_number":207,"context_line":"                const.LB_ALGORITHM: const.LB_ALGORITHM_ROUND_ROBIN,"},{"line_number":208,"context_line":"                const.HEALTH_MONITOR: {"},{"line_number":209,"context_line":"                    const.TYPE: const.HEALTH_MONITOR_HTTP,"},{"line_number":210,"context_line":"                    const.DELAY: 3,"},{"line_number":211,"context_line":"                    const.EXPECTED_CODES: \"200,201,202\","},{"line_number":212,"context_line":"                    const.HTTP_METHOD: const.GET,"},{"line_number":213,"context_line":"                    const.MAX_RETRIES: 2,"},{"line_number":214,"context_line":"                    const.TIMEOUT: 1,"},{"line_number":215,"context_line":"                    const.URL_PATH: \"/index.html\""},{"line_number":216,"context_line":"                },"},{"line_number":217,"context_line":"                const.MEMBERS: ["},{"line_number":218,"context_line":"                    {"},{"line_number":219,"context_line":"                        const.ADDRESS: \"192.0.2.1\","}],"source_content_type":"text/x-python","patch_set":10,"id":"cda93d26_a35b40a5","line":216,"range":{"start_line":208,"start_character":0,"end_line":216,"end_character":18},"in_reply_to":"ceb60bee_14161187","updated":"2022-01-24 09:46:17.000000000","message":"I agree, maybe we need a 2nd test function with TCP/no-hm","commit_id":"634d09cf77461e803bb3d86a4d4ba87ab5bb541a"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"class LB_CREATE_FEATURES(Enum):"},{"line_number":40,"context_line":"    \"\"\"Allows for different levels of testing load balancer creation\"\"\""},{"line_number":41,"context_line":"    BASIC \u003d auto()"},{"line_number":42,"context_line":"    POOL_MEMBERS \u003d auto()"},{"line_number":43,"context_line":"    FULL \u003d auto()"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"167197f3_899614b6","line":41,"range":{"start_line":41,"start_character":4,"end_line":41,"end_character":9},"updated":"2022-01-29 00:52:21.000000000","message":"BASIC doesn\u0027t communicate to me what this setting means.\nI think we need comments here explaining the differences,\nMaybe ONLY?","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"class LB_CREATE_FEATURES(Enum):"},{"line_number":40,"context_line":"    \"\"\"Allows for different levels of testing load balancer creation\"\"\""},{"line_number":41,"context_line":"    BASIC \u003d auto()"},{"line_number":42,"context_line":"    POOL_MEMBERS \u003d auto()"},{"line_number":43,"context_line":"    FULL \u003d auto()"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"93957721_68df0496","line":41,"range":{"start_line":41,"start_character":4,"end_line":41,"end_character":9},"in_reply_to":"167197f3_899614b6","updated":"2022-01-31 11:00:25.000000000","message":"Thanks, I chose ONLY_LB.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":39,"context_line":"class LB_CREATE_FEATURES(Enum):"},{"line_number":40,"context_line":"    \"\"\"Allows for different levels of testing load balancer creation\"\"\""},{"line_number":41,"context_line":"    BASIC \u003d auto()"},{"line_number":42,"context_line":"    POOL_MEMBERS \u003d auto()"},{"line_number":43,"context_line":"    FULL \u003d auto()"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"24d71ab5_c82cf731","line":42,"updated":"2022-01-29 00:52:21.000000000","message":"What is the value of testing without a health monitor?\nIt seems like this just multiplies the tests that need to be run without a lot of benefit.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"decf2c73cf5185b26f6bf74a462c103f907f88a0","unresolved":false,"context_lines":[{"line_number":39,"context_line":"class LB_CREATE_FEATURES(Enum):"},{"line_number":40,"context_line":"    \"\"\"Allows for different levels of testing load balancer creation\"\"\""},{"line_number":41,"context_line":"    BASIC \u003d auto()"},{"line_number":42,"context_line":"    POOL_MEMBERS \u003d auto()"},{"line_number":43,"context_line":"    FULL \u003d auto()"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"374b669d_89a4253d","line":42,"in_reply_to":"10a93b15_70a5907a","updated":"2022-02-04 09:35:27.000000000","message":"In order to keep the test simple Greg and I agreed to not support providers that don\u0027t support health monitors here.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"cc9725a590a797cfdc20054b83d653e9dfba560a","unresolved":true,"context_lines":[{"line_number":39,"context_line":"class LB_CREATE_FEATURES(Enum):"},{"line_number":40,"context_line":"    \"\"\"Allows for different levels of testing load balancer creation\"\"\""},{"line_number":41,"context_line":"    BASIC \u003d auto()"},{"line_number":42,"context_line":"    POOL_MEMBERS \u003d auto()"},{"line_number":43,"context_line":"    FULL \u003d auto()"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"10a93b15_70a5907a","line":42,"in_reply_to":"24d71ab5_c82cf731","updated":"2022-02-02 15:40:29.000000000","message":"I\u0027m not sure about the health-monitor status with other providers (ex: ovn-provider), but if it works in their env, we can remove it","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @decorators.idempotent_id(\u00272dcf5d20-741f-40f7-8924-42af9d22d502\u0027)"},{"line_number":62,"context_line":"    def test_load_balancer_ipv4_create_pool_members(self):"},{"line_number":63,"context_line":"        \"\"\"Tests the creation of a fully populated LB (no health manager)\"\"\""},{"line_number":64,"context_line":"        self._test_load_balancer_create("},{"line_number":65,"context_line":"            4, features\u003dLB_CREATE_FEATURES.POOL_MEMBERS)"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"85075d8b_6caea127","line":63,"range":{"start_line":63,"start_character":65,"end_line":63,"end_character":72},"updated":"2022-01-29 00:52:21.000000000","message":"monitor\n\"health manager\" is a control plane process","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @decorators.idempotent_id(\u00272dcf5d20-741f-40f7-8924-42af9d22d502\u0027)"},{"line_number":62,"context_line":"    def test_load_balancer_ipv4_create_pool_members(self):"},{"line_number":63,"context_line":"        \"\"\"Tests the creation of a fully populated LB (no health manager)\"\"\""},{"line_number":64,"context_line":"        self._test_load_balancer_create("},{"line_number":65,"context_line":"            4, features\u003dLB_CREATE_FEATURES.POOL_MEMBERS)"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"899fb33f_493c1ab3","line":63,"range":{"start_line":63,"start_character":65,"end_line":63,"end_character":72},"in_reply_to":"85075d8b_6caea127","updated":"2022-01-31 11:00:25.000000000","message":"Done","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        * Tests that users without the load balancer member role cannot"},{"line_number":93,"context_line":"          create load balancers."},{"line_number":94,"context_line":"        * Create a fully populated load balancer."},{"line_number":95,"context_line":"        * Show load balancer details."},{"line_number":96,"context_line":"        * Validate the show reflects the requested values."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"84cf5780_851102e6","line":94,"updated":"2022-01-29 00:52:21.000000000","message":"This statement may be confusing now. Maybe change it to something like \"with all of the parameters set\".","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        * Tests that users without the load balancer member role cannot"},{"line_number":93,"context_line":"          create load balancers."},{"line_number":94,"context_line":"        * Create a fully populated load balancer."},{"line_number":95,"context_line":"        * Show load balancer details."},{"line_number":96,"context_line":"        * Validate the show reflects the requested values."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"674306b6_966e084e","line":94,"in_reply_to":"84cf5780_851102e6","updated":"2022-01-31 11:00:25.000000000","message":"Done","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":96,"context_line":"        * Validate the show reflects the requested values."},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"        :param ip_version: 4 for IPv4, 6 for IPv6"},{"line_number":99,"context_line":"        :param fully_populated: If set to True, it will create a fully"},{"line_number":100,"context_line":"                                populated load balancer."},{"line_number":101,"context_line":"        \"\"\""},{"line_number":102,"context_line":"        lb_name \u003d data_utils.rand_name("}],"source_content_type":"text/x-python","patch_set":12,"id":"d43d7300_279373f0","line":99,"updated":"2022-01-29 00:52:21.000000000","message":"This isn\u0027t a boolean.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[{"line_number":96,"context_line":"        * Validate the show reflects the requested values."},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"        :param ip_version: 4 for IPv4, 6 for IPv6"},{"line_number":99,"context_line":"        :param fully_populated: If set to True, it will create a fully"},{"line_number":100,"context_line":"                                populated load balancer."},{"line_number":101,"context_line":"        \"\"\""},{"line_number":102,"context_line":"        lb_name \u003d data_utils.rand_name("}],"source_content_type":"text/x-python","patch_set":12,"id":"5f895e36_4ffbbb5e","line":99,"in_reply_to":"d43d7300_279373f0","updated":"2022-01-31 11:00:25.000000000","message":"Good catch... It was in a previous revision and I forgot to update the docstring after I added the enum.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":225,"context_line":"            return"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"        kwargs_dict[const.LISTENERS] \u003d [{"},{"line_number":228,"context_line":"            const.NAME: \"http_listener\","},{"line_number":229,"context_line":"            const.PROTOCOL: const.HTTP,"},{"line_number":230,"context_line":"            const.PROTOCOL_PORT: 80,"},{"line_number":231,"context_line":"            const.DEFAULT_POOL: {"}],"source_content_type":"text/x-python","patch_set":12,"id":"0d621a9b_3fc8e904","line":228,"updated":"2022-01-29 00:52:21.000000000","message":"Ideally we would name these with information about the test for easier debugging/log search.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[{"line_number":225,"context_line":"            return"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"        kwargs_dict[const.LISTENERS] \u003d [{"},{"line_number":228,"context_line":"            const.NAME: \"http_listener\","},{"line_number":229,"context_line":"            const.PROTOCOL: const.HTTP,"},{"line_number":230,"context_line":"            const.PROTOCOL_PORT: 80,"},{"line_number":231,"context_line":"            const.DEFAULT_POOL: {"}],"source_content_type":"text/x-python","patch_set":12,"id":"d444948d_0741b276","line":228,"in_reply_to":"0d621a9b_3fc8e904","updated":"2022-01-31 11:00:25.000000000","message":"Done","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":226,"context_line":""},{"line_number":227,"context_line":"        kwargs_dict[const.LISTENERS] \u003d [{"},{"line_number":228,"context_line":"            const.NAME: \"http_listener\","},{"line_number":229,"context_line":"            const.PROTOCOL: const.HTTP,"},{"line_number":230,"context_line":"            const.PROTOCOL_PORT: 80,"},{"line_number":231,"context_line":"            const.DEFAULT_POOL: {"},{"line_number":232,"context_line":"                const.NAME: \"rr_pool\","}],"source_content_type":"text/x-python","patch_set":12,"id":"288f124d_d98be334","line":229,"updated":"2022-01-29 00:52:21.000000000","message":"This is going to be a problem for the provider drivers that don\u0027t support HTTP (i.e. OVN).\nThese tests might be better suited to it\u0027s own test class. The matrix of tests required is going to be large (see https://github.com/openstack/octavia-tempest-plugin/blob/master/octavia_tempest_plugin/tests/api/v2/test_member.py#L144)\nAlso, on a live system (not using no-op) these tests are going to take a long time, so having them in their own test suite would be nice.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"decf2c73cf5185b26f6bf74a462c103f907f88a0","unresolved":false,"context_lines":[{"line_number":226,"context_line":""},{"line_number":227,"context_line":"        kwargs_dict[const.LISTENERS] \u003d [{"},{"line_number":228,"context_line":"            const.NAME: \"http_listener\","},{"line_number":229,"context_line":"            const.PROTOCOL: const.HTTP,"},{"line_number":230,"context_line":"            const.PROTOCOL_PORT: 80,"},{"line_number":231,"context_line":"            const.DEFAULT_POOL: {"},{"line_number":232,"context_line":"                const.NAME: \"rr_pool\","}],"source_content_type":"text/x-python","patch_set":12,"id":"d62fdd54_efccc25a","line":229,"in_reply_to":"288f124d_d98be334","updated":"2022-02-04 09:35:27.000000000","message":"Changed the test so it is targeted to features of the amphora driver specifically.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":234,"context_line":"                const.LB_ALGORITHM: const.LB_ALGORITHM_ROUND_ROBIN,"},{"line_number":235,"context_line":"                const.MEMBERS: ["},{"line_number":236,"context_line":"                    {"},{"line_number":237,"context_line":"                        const.ADDRESS: \"192.0.2.1\","},{"line_number":238,"context_line":"                        const.PROTOCOL_PORT: 80"},{"line_number":239,"context_line":"                    },"},{"line_number":240,"context_line":"                    {"}],"source_content_type":"text/x-python","patch_set":12,"id":"cf76e5df_6cab4625","line":237,"updated":"2022-01-29 00:52:21.000000000","message":"This may actually be something when this test suite is run outside of devstack.\nWe probably should make these addresses configurable.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"decf2c73cf5185b26f6bf74a462c103f907f88a0","unresolved":false,"context_lines":[{"line_number":234,"context_line":"                const.LB_ALGORITHM: const.LB_ALGORITHM_ROUND_ROBIN,"},{"line_number":235,"context_line":"                const.MEMBERS: ["},{"line_number":236,"context_line":"                    {"},{"line_number":237,"context_line":"                        const.ADDRESS: \"192.0.2.1\","},{"line_number":238,"context_line":"                        const.PROTOCOL_PORT: 80"},{"line_number":239,"context_line":"                    },"},{"line_number":240,"context_line":"                    {"}],"source_content_type":"text/x-python","patch_set":12,"id":"93e36c36_69ec9fb1","line":237,"in_reply_to":"43834009_0d3b5c26","updated":"2022-02-04 09:35:27.000000000","message":"I made the IPs now configurable using config.py.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"6e220bae69f3c9834b8ffa667d20068ffa487003","unresolved":true,"context_lines":[{"line_number":234,"context_line":"                const.LB_ALGORITHM: const.LB_ALGORITHM_ROUND_ROBIN,"},{"line_number":235,"context_line":"                const.MEMBERS: ["},{"line_number":236,"context_line":"                    {"},{"line_number":237,"context_line":"                        const.ADDRESS: \"192.0.2.1\","},{"line_number":238,"context_line":"                        const.PROTOCOL_PORT: 80"},{"line_number":239,"context_line":"                    },"},{"line_number":240,"context_line":"                    {"}],"source_content_type":"text/x-python","patch_set":12,"id":"3199a3bf_063df112","line":237,"in_reply_to":"cf76e5df_6cab4625","updated":"2022-01-31 10:09:42.000000000","message":"This address belongs to the Doc \u0026 example range, it should not be actually used in the cloud.\nWe already use those addresses in the api/v2/test_member.py tests","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":true,"context_lines":[{"line_number":234,"context_line":"                const.LB_ALGORITHM: const.LB_ALGORITHM_ROUND_ROBIN,"},{"line_number":235,"context_line":"                const.MEMBERS: ["},{"line_number":236,"context_line":"                    {"},{"line_number":237,"context_line":"                        const.ADDRESS: \"192.0.2.1\","},{"line_number":238,"context_line":"                        const.PROTOCOL_PORT: 80"},{"line_number":239,"context_line":"                    },"},{"line_number":240,"context_line":"                    {"}],"source_content_type":"text/x-python","patch_set":12,"id":"43834009_0d3b5c26","line":237,"in_reply_to":"cf76e5df_6cab4625","updated":"2022-01-31 11:00:25.000000000","message":"We chose this IP range because it is reserved for documentation and shouldn\u0027t be used for \"real\" things. I can look into making it configurable if that still can be a problem.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":298,"context_line":"            self.assertEqual(len(member_ids), len(address_pports_pairs))"},{"line_number":299,"context_line":"            for mid in member_ids:"},{"line_number":300,"context_line":"                member \u003d self.mem_member_client.show_member(mid, pool_id)"},{"line_number":301,"context_line":"                member_pair \u003d (member[const.ADDRESS],"},{"line_number":302,"context_line":"                               member[const.PROTOCOL_PORT])"},{"line_number":303,"context_line":"                self.assertIn(member_pair, address_pports_pairs)"},{"line_number":304,"context_line":"                address_pports_pairs.remove(member_pair)"}],"source_content_type":"text/x-python","patch_set":12,"id":"f5fa8ab1_409c4e6d","line":301,"range":{"start_line":301,"start_character":16,"end_line":301,"end_character":27},"updated":"2022-01-29 00:52:21.000000000","message":"nit: address_tuple might be more clear","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[{"line_number":298,"context_line":"            self.assertEqual(len(member_ids), len(address_pports_pairs))"},{"line_number":299,"context_line":"            for mid in member_ids:"},{"line_number":300,"context_line":"                member \u003d self.mem_member_client.show_member(mid, pool_id)"},{"line_number":301,"context_line":"                member_pair \u003d (member[const.ADDRESS],"},{"line_number":302,"context_line":"                               member[const.PROTOCOL_PORT])"},{"line_number":303,"context_line":"                self.assertIn(member_pair, address_pports_pairs)"},{"line_number":304,"context_line":"                address_pports_pairs.remove(member_pair)"}],"source_content_type":"text/x-python","patch_set":12,"id":"f000a250_ffbb339f","line":301,"range":{"start_line":301,"start_character":16,"end_line":301,"end_character":27},"in_reply_to":"f5fa8ab1_409c4e6d","updated":"2022-01-31 11:00:25.000000000","message":"Done","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7615e3977e18a6d0410dff29a6dbdb5247c25bac","unresolved":true,"context_lines":[{"line_number":338,"context_line":"        lb_kwargs_pool \u003d lb_kwargs[const.POOLS][0]"},{"line_number":339,"context_line":"        lb_pool_ids \u003d [p[const.ID] for p in lb[const.POOLS]]"},{"line_number":340,"context_line":"        # The other pool was checked above already"},{"line_number":341,"context_line":"        pid \u003d next(p for p in lb_pool_ids if p !\u003d"},{"line_number":342,"context_line":"                   listener[const.DEFAULT_POOL_ID])"},{"line_number":343,"context_line":"        pool \u003d _check_pool(lb_kwargs_pool, pid)"},{"line_number":344,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"6d383c68_b22f709d","line":341,"range":{"start_line":341,"start_character":8,"end_line":341,"end_character":12},"updated":"2022-01-29 00:52:21.000000000","message":"nit: pid is usually a process ID, pool_id might be more readable.","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"7bc6adfc3338942f51d9d6c7be783fa4201352ed","unresolved":false,"context_lines":[{"line_number":338,"context_line":"        lb_kwargs_pool \u003d lb_kwargs[const.POOLS][0]"},{"line_number":339,"context_line":"        lb_pool_ids \u003d [p[const.ID] for p in lb[const.POOLS]]"},{"line_number":340,"context_line":"        # The other pool was checked above already"},{"line_number":341,"context_line":"        pid \u003d next(p for p in lb_pool_ids if p !\u003d"},{"line_number":342,"context_line":"                   listener[const.DEFAULT_POOL_ID])"},{"line_number":343,"context_line":"        pool \u003d _check_pool(lb_kwargs_pool, pid)"},{"line_number":344,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"d8129000_9f5270cb","line":341,"range":{"start_line":341,"start_character":8,"end_line":341,"end_character":12},"in_reply_to":"6d383c68_b22f709d","updated":"2022-01-31 11:00:25.000000000","message":"Done","commit_id":"a2ad1e3ab457ed6a0dca7b8a4d23026a150f7ae3"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"9935bf6ab2d353763ab343d61ff4c38027ac5161","unresolved":true,"context_lines":[{"line_number":74,"context_line":"        * Validate the show reflects the requested values."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"        :param ip_version: 4 for IPv4, 6 for IPv6"},{"line_number":77,"context_line":"        :param fully_populated: If set to True, adds pools and"},{"line_number":78,"context_line":"            health monitor to the test."},{"line_number":79,"context_line":"        \"\"\""},{"line_number":80,"context_line":"        lb_name \u003d data_utils.rand_name("},{"line_number":81,"context_line":"            \"lb_member_lb1-create-ipv{}{}\".format("}],"source_content_type":"text/x-python","patch_set":19,"id":"dc1051c3_d3a23478","line":78,"range":{"start_line":77,"start_character":53,"end_line":78,"end_character":26},"updated":"2022-05-05 12:51:59.000000000","message":"nit: and also listeners and members","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a623f0b173617e4d8908624d0bea073e8ad0e228","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        * Validate the show reflects the requested values."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"        :param ip_version: 4 for IPv4, 6 for IPv6"},{"line_number":77,"context_line":"        :param fully_populated: If set to True, adds pools and"},{"line_number":78,"context_line":"            health monitor to the test."},{"line_number":79,"context_line":"        \"\"\""},{"line_number":80,"context_line":"        lb_name \u003d data_utils.rand_name("},{"line_number":81,"context_line":"            \"lb_member_lb1-create-ipv{}{}\".format("}],"source_content_type":"text/x-python","patch_set":19,"id":"8827b9f3_689237e1","line":78,"range":{"start_line":77,"start_character":53,"end_line":78,"end_character":26},"in_reply_to":"dc1051c3_d3a23478","updated":"2022-05-06 14:16:19.000000000","message":"Ack","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"9935bf6ab2d353763ab343d61ff4c38027ac5161","unresolved":true,"context_lines":[{"line_number":133,"context_line":"                                     const.ACTIVE,"},{"line_number":134,"context_line":"                                     CONF.load_balancer.lb_build_interval,"},{"line_number":135,"context_line":"                                     CONF.load_balancer.lb_build_timeout)"},{"line_number":136,"context_line":"        final_operating_status \u003d ("},{"line_number":137,"context_line":"            const.ERROR if fully_populated else const.ONLINE)"},{"line_number":138,"context_line":"        if not CONF.load_balancer.test_with_noop:"},{"line_number":139,"context_line":"            lb \u003d waiters.wait_for_status(self.mem_lb_client.show_loadbalancer,"},{"line_number":140,"context_line":"                                         lb[const.ID], const.OPERATING_STATUS,"},{"line_number":141,"context_line":"                                         final_operating_status,"}],"source_content_type":"text/x-python","patch_set":19,"id":"4d6f0b45_6f09996c","line":138,"range":{"start_line":136,"start_character":8,"end_line":138,"end_character":49},"updated":"2022-05-05 12:51:59.000000000","message":"I don\u0027t remember if we have discusses this operating_status, but I believe that we shouldn\u0027t check it when creating a fully populated LB.\ncan we ensure that the IP addresses of the members cannot conflict with existing IP addresses on the users\u0027 cloud? (if the network are unique and does\u0027nt have a default route, that might be ok)\nif we cannot ensure it, we cannot determine the value of the operating_status.","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a623f0b173617e4d8908624d0bea073e8ad0e228","unresolved":false,"context_lines":[{"line_number":133,"context_line":"                                     const.ACTIVE,"},{"line_number":134,"context_line":"                                     CONF.load_balancer.lb_build_interval,"},{"line_number":135,"context_line":"                                     CONF.load_balancer.lb_build_timeout)"},{"line_number":136,"context_line":"        final_operating_status \u003d ("},{"line_number":137,"context_line":"            const.ERROR if fully_populated else const.ONLINE)"},{"line_number":138,"context_line":"        if not CONF.load_balancer.test_with_noop:"},{"line_number":139,"context_line":"            lb \u003d waiters.wait_for_status(self.mem_lb_client.show_loadbalancer,"},{"line_number":140,"context_line":"                                         lb[const.ID], const.OPERATING_STATUS,"},{"line_number":141,"context_line":"                                         final_operating_status,"}],"source_content_type":"text/x-python","patch_set":19,"id":"fa2fa8cc_e286bd05","line":138,"range":{"start_line":136,"start_character":8,"end_line":138,"end_character":49},"in_reply_to":"4d6f0b45_6f09996c","updated":"2022-05-06 14:16:19.000000000","message":"Done","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"9935bf6ab2d353763ab343d61ff4c38027ac5161","unresolved":true,"context_lines":[{"line_number":152,"context_line":"        if CONF.load_balancer.test_with_noop:"},{"line_number":153,"context_line":"            self.assertEqual(const.OFFLINE, lb[const.OPERATING_STATUS])"},{"line_number":154,"context_line":"        else:"},{"line_number":155,"context_line":"            self.assertEqual(final_operating_status,"},{"line_number":156,"context_line":"                             lb[const.OPERATING_STATUS])"},{"line_number":157,"context_line":"            if ip_version \u003d\u003d 4:"},{"line_number":158,"context_line":"                self.assertEqual(self.lb_member_vip_net[const.ID],"}],"source_content_type":"text/x-python","patch_set":19,"id":"c1730314_d5a32349","line":155,"range":{"start_line":155,"start_character":29,"end_line":155,"end_character":51},"updated":"2022-05-05 12:51:59.000000000","message":"same here","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a623f0b173617e4d8908624d0bea073e8ad0e228","unresolved":false,"context_lines":[{"line_number":152,"context_line":"        if CONF.load_balancer.test_with_noop:"},{"line_number":153,"context_line":"            self.assertEqual(const.OFFLINE, lb[const.OPERATING_STATUS])"},{"line_number":154,"context_line":"        else:"},{"line_number":155,"context_line":"            self.assertEqual(final_operating_status,"},{"line_number":156,"context_line":"                             lb[const.OPERATING_STATUS])"},{"line_number":157,"context_line":"            if ip_version \u003d\u003d 4:"},{"line_number":158,"context_line":"                self.assertEqual(self.lb_member_vip_net[const.ID],"}],"source_content_type":"text/x-python","patch_set":19,"id":"6a86cc99_4424ddf4","line":155,"range":{"start_line":155,"start_character":29,"end_line":155,"end_character":51},"in_reply_to":"c1730314_d5a32349","updated":"2022-05-06 14:16:19.000000000","message":"Done","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"9935bf6ab2d353763ab343d61ff4c38027ac5161","unresolved":true,"context_lines":[{"line_number":303,"context_line":"        pool_hm_id \u003d pool[const.HEALTH_MONITOR_ID]"},{"line_number":304,"context_line":"        hm \u003d self.mem_healthmonitor_client.show_healthmonitor(pool_hm_id)"},{"line_number":305,"context_line":"        lb_kwargs_hm \u003d lb_kwargs_default_pool[const.HEALTH_MONITOR]"},{"line_number":306,"context_line":"        self.assertEqual(hm, {**hm, **lb_kwargs_hm})"},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"        pool_members_ids \u003d [member[const.ID]"},{"line_number":309,"context_line":"                            for member in pool[const.MEMBERS]]"}],"source_content_type":"text/x-python","patch_set":19,"id":"c29e6706_268d487d","line":306,"range":{"start_line":306,"start_character":25,"end_line":306,"end_character":51},"updated":"2022-05-05 12:51:59.000000000","message":"probably inverse the parameters, we use assertEqual(expected, observed)\nhere hm is the observed value.","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a623f0b173617e4d8908624d0bea073e8ad0e228","unresolved":false,"context_lines":[{"line_number":303,"context_line":"        pool_hm_id \u003d pool[const.HEALTH_MONITOR_ID]"},{"line_number":304,"context_line":"        hm \u003d self.mem_healthmonitor_client.show_healthmonitor(pool_hm_id)"},{"line_number":305,"context_line":"        lb_kwargs_hm \u003d lb_kwargs_default_pool[const.HEALTH_MONITOR]"},{"line_number":306,"context_line":"        self.assertEqual(hm, {**hm, **lb_kwargs_hm})"},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"        pool_members_ids \u003d [member[const.ID]"},{"line_number":309,"context_line":"                            for member in pool[const.MEMBERS]]"}],"source_content_type":"text/x-python","patch_set":19,"id":"b558a5de_443220e1","line":306,"range":{"start_line":306,"start_character":25,"end_line":306,"end_character":51},"in_reply_to":"c29e6706_268d487d","updated":"2022-05-06 14:16:19.000000000","message":"Thanks, it\u0027s hard for me to get used to this inverse order. It just feels wrong and I think most people would not do it that way intuitively.","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"9935bf6ab2d353763ab343d61ff4c38027ac5161","unresolved":true,"context_lines":[{"line_number":307,"context_line":""},{"line_number":308,"context_line":"        pool_members_ids \u003d [member[const.ID]"},{"line_number":309,"context_line":"                            for member in pool[const.MEMBERS]]"},{"line_number":310,"context_line":"        member_addrs \u003d [m[const.ADDRESS]"},{"line_number":311,"context_line":"                        for m in lb_kwargs_default_pool[const.MEMBERS]]"},{"line_number":312,"context_line":"        member_pports \u003d [m[const.PROTOCOL_PORT]"},{"line_number":313,"context_line":"                         for m in lb_kwargs_default_pool[const.MEMBERS]]"},{"line_number":314,"context_line":"        _check_members(pool_members_ids, listener[const.DEFAULT_POOL_ID],"}],"source_content_type":"text/x-python","patch_set":19,"id":"6ebfdab3_8fa7d450","line":311,"range":{"start_line":310,"start_character":8,"end_line":311,"end_character":71},"updated":"2022-05-05 12:51:59.000000000","message":"maybe replace the 2 lists and the zip() with:\n    member_list \u003d [(m[const.ADDRESS], m[const.PROTOCOL_PORT])\n                   for m in lb_kwargs_default_pool[const.MEMBERS]]\n?","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a623f0b173617e4d8908624d0bea073e8ad0e228","unresolved":false,"context_lines":[{"line_number":307,"context_line":""},{"line_number":308,"context_line":"        pool_members_ids \u003d [member[const.ID]"},{"line_number":309,"context_line":"                            for member in pool[const.MEMBERS]]"},{"line_number":310,"context_line":"        member_addrs \u003d [m[const.ADDRESS]"},{"line_number":311,"context_line":"                        for m in lb_kwargs_default_pool[const.MEMBERS]]"},{"line_number":312,"context_line":"        member_pports \u003d [m[const.PROTOCOL_PORT]"},{"line_number":313,"context_line":"                         for m in lb_kwargs_default_pool[const.MEMBERS]]"},{"line_number":314,"context_line":"        _check_members(pool_members_ids, listener[const.DEFAULT_POOL_ID],"}],"source_content_type":"text/x-python","patch_set":19,"id":"80ad6365_36b3e8c2","line":311,"range":{"start_line":310,"start_character":8,"end_line":311,"end_character":71},"in_reply_to":"6ebfdab3_8fa7d450","updated":"2022-05-06 14:16:19.000000000","message":"Ack","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"9935bf6ab2d353763ab343d61ff4c38027ac5161","unresolved":true,"context_lines":[{"line_number":323,"context_line":""},{"line_number":324,"context_line":"        hm \u003d self.mem_healthmonitor_client.show_healthmonitor("},{"line_number":325,"context_line":"            pool[const.HEALTH_MONITOR_ID])"},{"line_number":326,"context_line":"        self.assertEqual(hm,"},{"line_number":327,"context_line":"                         {**hm, **lb_kwargs_pool[const.HEALTH_MONITOR]})"},{"line_number":328,"context_line":"        pool_members_ids \u003d [member[const.ID]"},{"line_number":329,"context_line":"                            for member in pool[const.MEMBERS]]"}],"source_content_type":"text/x-python","patch_set":19,"id":"61153079_98969442","line":326,"range":{"start_line":326,"start_character":25,"end_line":326,"end_character":27},"updated":"2022-05-05 12:51:59.000000000","message":"hm is the observed value","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"a623f0b173617e4d8908624d0bea073e8ad0e228","unresolved":false,"context_lines":[{"line_number":323,"context_line":""},{"line_number":324,"context_line":"        hm \u003d self.mem_healthmonitor_client.show_healthmonitor("},{"line_number":325,"context_line":"            pool[const.HEALTH_MONITOR_ID])"},{"line_number":326,"context_line":"        self.assertEqual(hm,"},{"line_number":327,"context_line":"                         {**hm, **lb_kwargs_pool[const.HEALTH_MONITOR]})"},{"line_number":328,"context_line":"        pool_members_ids \u003d [member[const.ID]"},{"line_number":329,"context_line":"                            for member in pool[const.MEMBERS]]"}],"source_content_type":"text/x-python","patch_set":19,"id":"7051a1e8_ba52f7e1","line":326,"range":{"start_line":326,"start_character":25,"end_line":326,"end_character":27},"in_reply_to":"61153079_98969442","updated":"2022-05-06 14:16:19.000000000","message":"Done","commit_id":"e5caa69e71fb66993414ada2994bb6e947a42f0b"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"efe6ba0f85c0576f7dab38d0a289b85ffa03f68f","unresolved":true,"context_lines":[{"line_number":133,"context_line":"                                     const.ACTIVE,"},{"line_number":134,"context_line":"                                     CONF.load_balancer.lb_build_interval,"},{"line_number":135,"context_line":"                                     CONF.load_balancer.lb_build_timeout)"},{"line_number":136,"context_line":"        if not CONF.load_balancer.test_with_noop and not fully_populated:"},{"line_number":137,"context_line":"            lb \u003d waiters.wait_for_status(self.mem_lb_client.show_loadbalancer,"},{"line_number":138,"context_line":"                                         lb[const.ID], const.OPERATING_STATUS,"},{"line_number":139,"context_line":"                                         const.ONLINE,"}],"source_content_type":"text/x-python","patch_set":20,"id":"f76374e8_03807e6e","line":136,"range":{"start_line":136,"start_character":49,"end_line":136,"end_character":73},"updated":"2022-11-29 13:21:49.000000000","message":"Don\u0027t we expect the LB getting into ONLINE no matter if fully_populated or not?","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"c686b6fd97e79c2dc1b3dc2f165faf45d9a8bdf6","unresolved":true,"context_lines":[{"line_number":133,"context_line":"                                     const.ACTIVE,"},{"line_number":134,"context_line":"                                     CONF.load_balancer.lb_build_interval,"},{"line_number":135,"context_line":"                                     CONF.load_balancer.lb_build_timeout)"},{"line_number":136,"context_line":"        if not CONF.load_balancer.test_with_noop and not fully_populated:"},{"line_number":137,"context_line":"            lb \u003d waiters.wait_for_status(self.mem_lb_client.show_loadbalancer,"},{"line_number":138,"context_line":"                                         lb[const.ID], const.OPERATING_STATUS,"},{"line_number":139,"context_line":"                                         const.ONLINE,"}],"source_content_type":"text/x-python","patch_set":20,"id":"4c3aad84_cab39d20","line":136,"range":{"start_line":136,"start_character":49,"end_line":136,"end_character":73},"in_reply_to":"3bc7b4cb_ff35ee69","updated":"2023-01-12 11:02:38.000000000","message":"maybe add a comment mentionning that a FP LB with HM and member cannot be ONLINE in this test.","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"75dc28c2cdb03a3f7bfcfc630fb41530a6475d78","unresolved":false,"context_lines":[{"line_number":133,"context_line":"                                     const.ACTIVE,"},{"line_number":134,"context_line":"                                     CONF.load_balancer.lb_build_interval,"},{"line_number":135,"context_line":"                                     CONF.load_balancer.lb_build_timeout)"},{"line_number":136,"context_line":"        if not CONF.load_balancer.test_with_noop and not fully_populated:"},{"line_number":137,"context_line":"            lb \u003d waiters.wait_for_status(self.mem_lb_client.show_loadbalancer,"},{"line_number":138,"context_line":"                                         lb[const.ID], const.OPERATING_STATUS,"},{"line_number":139,"context_line":"                                         const.ONLINE,"}],"source_content_type":"text/x-python","patch_set":20,"id":"c879d380_9cec204d","line":136,"range":{"start_line":136,"start_character":49,"end_line":136,"end_character":73},"in_reply_to":"4c3aad84_cab39d20","updated":"2023-11-20 15:43:53.000000000","message":"Done","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"},{"author":{"_account_id":34429,"name":"Tom Weininger","email":"dienste@weinimo.de","username":"tweining"},"change_message_id":"6b3a081b87b26e7f99374449e511c51302952d27","unresolved":true,"context_lines":[{"line_number":133,"context_line":"                                     const.ACTIVE,"},{"line_number":134,"context_line":"                                     CONF.load_balancer.lb_build_interval,"},{"line_number":135,"context_line":"                                     CONF.load_balancer.lb_build_timeout)"},{"line_number":136,"context_line":"        if not CONF.load_balancer.test_with_noop and not fully_populated:"},{"line_number":137,"context_line":"            lb \u003d waiters.wait_for_status(self.mem_lb_client.show_loadbalancer,"},{"line_number":138,"context_line":"                                         lb[const.ID], const.OPERATING_STATUS,"},{"line_number":139,"context_line":"                                         const.ONLINE,"}],"source_content_type":"text/x-python","patch_set":20,"id":"3bc7b4cb_ff35ee69","line":136,"range":{"start_line":136,"start_character":49,"end_line":136,"end_character":73},"in_reply_to":"f76374e8_03807e6e","updated":"2022-11-29 13:48:48.000000000","message":"See comment https://review.opendev.org/c/openstack/octavia-tempest-plugin/+/824999/comments/4d6f0b45_6f09996c. Also, in the fully_populated case the operating state would go into ERROR apparently because of the health monitoring.","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"66dad901a5e89210f165c2207e63904d0241bf11","unresolved":true,"context_lines":[{"line_number":324,"context_line":"                            for member in pool[const.MEMBERS]]"},{"line_number":325,"context_line":"        address_pport_tuples \u003d [(m[const.ADDRESS], m[const.PROTOCOL_PORT])"},{"line_number":326,"context_line":"                                for m in lb_kwargs_pool[const.MEMBERS]]"},{"line_number":327,"context_line":"        _check_members(pool_members_ids, pool_id, address_pport_tuples)"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"    @decorators.idempotent_id(\u0027643ef031-c800-45f2-b229-3c8f8b37c829\u0027)"},{"line_number":330,"context_line":"    def test_load_balancer_delete(self):"}],"source_content_type":"text/x-python","patch_set":20,"id":"15e62404_cd032c6c","line":327,"range":{"start_line":327,"start_character":8,"end_line":327,"end_character":22},"updated":"2022-12-02 16:46:57.000000000","message":"nit: we can insert both the members check and the hm check inside the pool check and call the pool check for each non-attached pool and default pool as it checks the same things.\n(Maybe I missed a comment where you guys talked about it, idk)","commit_id":"f5704f47e435ed12d80b7472774351239f51f774"}]}
