)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"cbf30525f92a5114bec5325826ab3d6ced821a45","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d9a10587_6ed0c8f9","updated":"2022-03-17 10:13:10.000000000","message":"Please also note that until [1] lands rechecking doesn\u0027t make a lot of sense, the gates are really unstable.\n\n[1] https://review.opendev.org/c/openstack/kuryr-kubernetes/+/833994","commit_id":"45fd82b9e3da4bccd4ac55f2b20e1e96603fa1ae"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"fe48ef09eb4546b534031e024b70d14b4d308e74","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"73153db9_7a66f6c1","updated":"2022-03-16 21:24:13.000000000","message":"recheck","commit_id":"45fd82b9e3da4bccd4ac55f2b20e1e96603fa1ae"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"e8891a2cd929d65d31bc5bef6c26cebb03d450ee","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0b806814_632949ca","updated":"2022-03-21 07:49:36.000000000","message":"recheck","commit_id":"bacbf215aad1047f240b6bc32a3ae2bac9453fec"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"a425d40d65320854fc4fed7839d676dea8ab4ba0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"ef5a8ede_6b3292ed","updated":"2022-03-21 07:42:11.000000000","message":"recheck","commit_id":"bacbf215aad1047f240b6bc32a3ae2bac9453fec"}],"kuryr_tempest_plugin/tests/scenario/base.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"661e6fc27daba28703c728701d3f2aa8f2839f58","unresolved":true,"context_lines":[{"line_number":218,"context_line":"                name\u003dpod_name,"},{"line_number":219,"context_line":"                body\u003dbody,"},{"line_number":220,"context_line":"                namespace\u003dnamespace)"},{"line_number":221,"context_line":"        except kubernetes.client.exceptions.ApiException as e:"},{"line_number":222,"context_line":"            if e.status \u003d\u003d 404:"},{"line_number":223,"context_line":"                LOG.debug(f\"Pod {pod_name} was not found.\")"},{"line_number":224,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"31a41e16_fa62fdf2","line":221,"range":{"start_line":221,"start_character":0,"end_line":221,"end_character":62},"updated":"2022-03-21 11:16:02.000000000","message":"Are you sure you can\u0027t just catch NotFoundError [1]?\n\n[1] https://github.com/kubernetes-client/python/blob/1271465acdb80bf174c50564a384fd6898635ea6/kubernetes/base/dynamic/exceptions.py#L33","commit_id":"bacbf215aad1047f240b6bc32a3ae2bac9453fec"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"e24de65cc719eab397d1960db62aceb3f84d21c5","unresolved":true,"context_lines":[{"line_number":218,"context_line":"                name\u003dpod_name,"},{"line_number":219,"context_line":"                body\u003dbody,"},{"line_number":220,"context_line":"                namespace\u003dnamespace)"},{"line_number":221,"context_line":"        except kubernetes.client.exceptions.ApiException as e:"},{"line_number":222,"context_line":"            if e.status \u003d\u003d 404:"},{"line_number":223,"context_line":"                LOG.debug(f\"Pod {pod_name} was not found.\")"},{"line_number":224,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"c6f127e2_2a53e4a1","line":221,"range":{"start_line":221,"start_character":0,"end_line":221,"end_character":62},"in_reply_to":"31a41e16_fa62fdf2","updated":"2022-03-21 13:55:22.000000000","message":"I only get ApiAxception","commit_id":"bacbf215aad1047f240b6bc32a3ae2bac9453fec"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"64cb399b034bccee41a145db65d23de95a0099c7","unresolved":true,"context_lines":[{"line_number":218,"context_line":"                name\u003dpod_name,"},{"line_number":219,"context_line":"                body\u003dbody,"},{"line_number":220,"context_line":"                namespace\u003dnamespace)"},{"line_number":221,"context_line":"        except kubernetes.client.exceptions.ApiException as e:"},{"line_number":222,"context_line":"            if e.status \u003d\u003d 404:"},{"line_number":223,"context_line":"                LOG.debug(f\"Pod {pod_name} was not found.\")"},{"line_number":224,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"46817c78_04878477","line":221,"range":{"start_line":221,"start_character":0,"end_line":221,"end_character":62},"in_reply_to":"31a41e16_fa62fdf2","updated":"2022-03-21 13:28:18.000000000","message":"Okay, for some reason the client raises general ApiException, so this has to be like this.","commit_id":"bacbf215aad1047f240b6bc32a3ae2bac9453fec"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"6dc58113aa3ea709abca199fd1301152d564d155","unresolved":false,"context_lines":[{"line_number":218,"context_line":"                name\u003dpod_name,"},{"line_number":219,"context_line":"                body\u003dbody,"},{"line_number":220,"context_line":"                namespace\u003dnamespace)"},{"line_number":221,"context_line":"        except kubernetes.client.exceptions.ApiException as e:"},{"line_number":222,"context_line":"            if e.status \u003d\u003d 404:"},{"line_number":223,"context_line":"                LOG.debug(f\"Pod {pod_name} was not found.\")"},{"line_number":224,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"0d882724_eb30c93a","line":221,"range":{"start_line":221,"start_character":0,"end_line":221,"end_character":62},"in_reply_to":"c6f127e2_2a53e4a1","updated":"2022-03-23 07:35:51.000000000","message":"Done","commit_id":"bacbf215aad1047f240b6bc32a3ae2bac9453fec"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"13250709b373d0057c03e828d585759dbb55e153","unresolved":true,"context_lines":[{"line_number":219,"context_line":"                body\u003dbody,"},{"line_number":220,"context_line":"                namespace\u003dnamespace)"},{"line_number":221,"context_line":"        except kubernetes.client.exceptions.ApiException as e:"},{"line_number":222,"context_line":"            if e.status \u003d\u003d 404:"},{"line_number":223,"context_line":"                LOG.debug(f\"Pod {pod_name} was not found.\")"},{"line_number":224,"context_line":"            else:"},{"line_number":225,"context_line":"                raise"},{"line_number":226,"context_line":"        # TODO(apuimedo) This sleep to be replaced with a polling with"},{"line_number":227,"context_line":"        # timeout for the pod object to be gone from k8s api."},{"line_number":228,"context_line":"        time.sleep(30)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7023fd94_dbd26c23","line":225,"range":{"start_line":222,"start_character":12,"end_line":225,"end_character":21},"updated":"2022-03-23 08:14:48.000000000","message":"turbonit:\n\n  if e.status !\u003d 404:\n      raise\n  LOG.debug(…)\n\none line less ;)","commit_id":"f6f77354b1cc424009b718517c338d5fc7669917"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"18d2631e01fd41cec0fed2f49f9c2ed43e728644","unresolved":true,"context_lines":[{"line_number":219,"context_line":"                body\u003dbody,"},{"line_number":220,"context_line":"                namespace\u003dnamespace)"},{"line_number":221,"context_line":"        except kubernetes.client.exceptions.ApiException as e:"},{"line_number":222,"context_line":"            if e.status \u003d\u003d 404:"},{"line_number":223,"context_line":"                LOG.debug(f\"Pod {pod_name} was not found.\")"},{"line_number":224,"context_line":"            else:"},{"line_number":225,"context_line":"                raise"},{"line_number":226,"context_line":"        # TODO(apuimedo) This sleep to be replaced with a polling with"},{"line_number":227,"context_line":"        # timeout for the pod object to be gone from k8s api."},{"line_number":228,"context_line":"        time.sleep(30)"}],"source_content_type":"text/x-python","patch_set":4,"id":"6ece3895_6353f0e4","line":225,"range":{"start_line":222,"start_character":12,"end_line":225,"end_character":21},"in_reply_to":"7023fd94_dbd26c23","updated":"2022-03-23 10:29:23.000000000","message":"If it\u0027s ok - I\u0027ll do it in the delete pod patch","commit_id":"f6f77354b1cc424009b718517c338d5fc7669917"}],"kuryr_tempest_plugin/tests/scenario/test_kuryr_restart.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"a3b97209461379322286e26cb8aa2cadb378f48c","unresolved":true,"context_lines":[{"line_number":70,"context_line":"                    \u0027floating_ip_address\u0027])"},{"line_number":71,"context_line":"                self.assertTrue(self.ping_ip_address(pod_fip["},{"line_number":72,"context_line":"                    \u0027floatingip\u0027][\u0027floating_ip_address\u0027]))"},{"line_number":73,"context_line":"                self.delete_pod(pod_name)"},{"line_number":74,"context_line":"                self.os_admin.floating_ips_client.delete_floatingip("},{"line_number":75,"context_line":"                    pod_fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        # Check that both kuryr-pods are up and running"},{"line_number":78,"context_line":"        # The newly created pods are running because create_pod is written"}],"source_content_type":"text/x-python","patch_set":1,"id":"541e9e75_5b2a27b0","line":75,"range":{"start_line":73,"start_character":0,"end_line":75,"end_character":48},"updated":"2022-03-16 15:02:23.000000000","message":"If you want to add these, please add them using self.addCleanup() so that they\u0027re run even if test fails.","commit_id":"45fd82b9e3da4bccd4ac55f2b20e1e96603fa1ae"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"6dc58113aa3ea709abca199fd1301152d564d155","unresolved":false,"context_lines":[{"line_number":70,"context_line":"                    \u0027floating_ip_address\u0027])"},{"line_number":71,"context_line":"                self.assertTrue(self.ping_ip_address(pod_fip["},{"line_number":72,"context_line":"                    \u0027floatingip\u0027][\u0027floating_ip_address\u0027]))"},{"line_number":73,"context_line":"                self.delete_pod(pod_name)"},{"line_number":74,"context_line":"                self.os_admin.floating_ips_client.delete_floatingip("},{"line_number":75,"context_line":"                    pod_fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        # Check that both kuryr-pods are up and running"},{"line_number":78,"context_line":"        # The newly created pods are running because create_pod is written"}],"source_content_type":"text/x-python","patch_set":1,"id":"22c42312_84155851","line":75,"range":{"start_line":73,"start_character":0,"end_line":75,"end_character":48},"in_reply_to":"0601d9f2_3017d070","updated":"2022-03-23 07:35:51.000000000","message":"Done","commit_id":"45fd82b9e3da4bccd4ac55f2b20e1e96603fa1ae"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"796be33063aedad4a983674c133c5b7607a92af5","unresolved":true,"context_lines":[{"line_number":70,"context_line":"                    \u0027floating_ip_address\u0027])"},{"line_number":71,"context_line":"                self.assertTrue(self.ping_ip_address(pod_fip["},{"line_number":72,"context_line":"                    \u0027floatingip\u0027][\u0027floating_ip_address\u0027]))"},{"line_number":73,"context_line":"                self.delete_pod(pod_name)"},{"line_number":74,"context_line":"                self.os_admin.floating_ips_client.delete_floatingip("},{"line_number":75,"context_line":"                    pod_fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        # Check that both kuryr-pods are up and running"},{"line_number":78,"context_line":"        # The newly created pods are running because create_pod is written"}],"source_content_type":"text/x-python","patch_set":1,"id":"0601d9f2_3017d070","line":75,"range":{"start_line":73,"start_character":0,"end_line":75,"end_character":48},"in_reply_to":"35ed80af_930c16b4","updated":"2022-03-17 10:46:48.000000000","message":"Agree 100%. Will do","commit_id":"45fd82b9e3da4bccd4ac55f2b20e1e96603fa1ae"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"18c127929a2995f42e1c8d6f78385093f79985db","unresolved":true,"context_lines":[{"line_number":70,"context_line":"                    \u0027floating_ip_address\u0027])"},{"line_number":71,"context_line":"                self.assertTrue(self.ping_ip_address(pod_fip["},{"line_number":72,"context_line":"                    \u0027floatingip\u0027][\u0027floating_ip_address\u0027]))"},{"line_number":73,"context_line":"                self.delete_pod(pod_name)"},{"line_number":74,"context_line":"                self.os_admin.floating_ips_client.delete_floatingip("},{"line_number":75,"context_line":"                    pod_fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        # Check that both kuryr-pods are up and running"},{"line_number":78,"context_line":"        # The newly created pods are running because create_pod is written"}],"source_content_type":"text/x-python","patch_set":1,"id":"aec0c6be_1c193dc4","line":75,"range":{"start_line":73,"start_character":0,"end_line":75,"end_character":48},"in_reply_to":"541e9e75_5b2a27b0","updated":"2022-03-16 21:23:02.000000000","message":"The thing is that it should be deleted here because every iteration of the loop creates a new pod and a new fip.","commit_id":"45fd82b9e3da4bccd4ac55f2b20e1e96603fa1ae"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"cbf30525f92a5114bec5325826ab3d6ced821a45","unresolved":true,"context_lines":[{"line_number":70,"context_line":"                    \u0027floating_ip_address\u0027])"},{"line_number":71,"context_line":"                self.assertTrue(self.ping_ip_address(pod_fip["},{"line_number":72,"context_line":"                    \u0027floatingip\u0027][\u0027floating_ip_address\u0027]))"},{"line_number":73,"context_line":"                self.delete_pod(pod_name)"},{"line_number":74,"context_line":"                self.os_admin.floating_ips_client.delete_floatingip("},{"line_number":75,"context_line":"                    pod_fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        # Check that both kuryr-pods are up and running"},{"line_number":78,"context_line":"        # The newly created pods are running because create_pod is written"}],"source_content_type":"text/x-python","patch_set":1,"id":"35ed80af_930c16b4","line":75,"range":{"start_line":73,"start_character":0,"end_line":75,"end_character":48},"in_reply_to":"aec0c6be_1c193dc4","updated":"2022-03-17 10:13:10.000000000","message":"Okay, you\u0027re right, but this is just a bad design of the test. Let\u0027s modify it to spawn a tester pod first and then each time new pod will be pinged from that pod. That way we don\u0027t need to create FIPs at all.","commit_id":"45fd82b9e3da4bccd4ac55f2b20e1e96603fa1ae"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"661e6fc27daba28703c728701d3f2aa8f2839f58","unresolved":true,"context_lines":[{"line_number":41,"context_line":"        #  a regular pod just after removal"},{"line_number":42,"context_line":"        client_pod_name, pod \u003d self.create_pod()"},{"line_number":43,"context_line":"        self.addCleanup(self.delete_pod, client_pod_name)"},{"line_number":44,"context_line":"        self.assign_fip_to_pod(client_pod_name)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"        kube_system_pods \u003d self.get_pod_name_list("},{"line_number":47,"context_line":"            namespace\u003dCONF.kuryr_kubernetes.kube_system_namespace)"}],"source_content_type":"text/x-python","patch_set":3,"id":"aea86e64_c138c66c","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":47},"updated":"2022-03-21 11:16:02.000000000","message":"Why do we need FIP on the client pod? Later on we\u0027re executing commands in it through K8s API so we should be fine without?","commit_id":"bacbf215aad1047f240b6bc32a3ae2bac9453fec"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"e24de65cc719eab397d1960db62aceb3f84d21c5","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        #  a regular pod just after removal"},{"line_number":42,"context_line":"        client_pod_name, pod \u003d self.create_pod()"},{"line_number":43,"context_line":"        self.addCleanup(self.delete_pod, client_pod_name)"},{"line_number":44,"context_line":"        self.assign_fip_to_pod(client_pod_name)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"        kube_system_pods \u003d self.get_pod_name_list("},{"line_number":47,"context_line":"            namespace\u003dCONF.kuryr_kubernetes.kube_system_namespace)"}],"source_content_type":"text/x-python","patch_set":3,"id":"b1f75dee_b273f991","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":47},"in_reply_to":"aea86e64_c138c66c","updated":"2022-03-21 13:55:22.000000000","message":"Done","commit_id":"bacbf215aad1047f240b6bc32a3ae2bac9453fec"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"13250709b373d0057c03e828d585759dbb55e153","unresolved":true,"context_lines":[{"line_number":70,"context_line":"                self.addCleanup(self.delete_pod, pod_name)"},{"line_number":71,"context_line":"                dst_pod_ip \u003d self.get_pod_ip(pod_name)"},{"line_number":72,"context_line":"                curl_tmpl \u003d self.get_curl_template(dst_pod_ip,"},{"line_number":73,"context_line":"                                                   extra_args\u003d\u0027-m 10\u0027,"},{"line_number":74,"context_line":"                                                   port\u003d8080)"},{"line_number":75,"context_line":"                cmd \u003d [\"/bin/sh\", \"-c\", curl_tmpl.format(dst_pod_ip, \u0027:8080\u0027)]"},{"line_number":76,"context_line":"                self.assertIn(consts.POD_OUTPUT, self.exec_command_in_pod("}],"source_content_type":"text/x-python","patch_set":4,"id":"19f7cc72_9c6c0eeb","line":73,"range":{"start_line":73,"start_character":51,"end_line":73,"end_character":70},"updated":"2022-03-23 08:14:48.000000000","message":"Maybe increasing max-time to 15/20 would be more appropriate, since we all know gates tend to be slow.","commit_id":"f6f77354b1cc424009b718517c338d5fc7669917"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"38b0a56b3f1f39ef0d1852d784005911ae47bd8a","unresolved":true,"context_lines":[{"line_number":70,"context_line":"                self.addCleanup(self.delete_pod, pod_name)"},{"line_number":71,"context_line":"                dst_pod_ip \u003d self.get_pod_ip(pod_name)"},{"line_number":72,"context_line":"                curl_tmpl \u003d self.get_curl_template(dst_pod_ip,"},{"line_number":73,"context_line":"                                                   extra_args\u003d\u0027-m 10\u0027,"},{"line_number":74,"context_line":"                                                   port\u003d8080)"},{"line_number":75,"context_line":"                cmd \u003d [\"/bin/sh\", \"-c\", curl_tmpl.format(dst_pod_ip, \u0027:8080\u0027)]"},{"line_number":76,"context_line":"                self.assertIn(consts.POD_OUTPUT, self.exec_command_in_pod("}],"source_content_type":"text/x-python","patch_set":4,"id":"44c4cd09_77204444","line":73,"range":{"start_line":73,"start_character":51,"end_line":73,"end_character":70},"in_reply_to":"19f7cc72_9c6c0eeb","updated":"2022-03-23 08:30:58.000000000","message":"We can raise it, but we mostly have troubles with connections to the LBs and this is direct pod-\u003epod communication, so should be better.","commit_id":"f6f77354b1cc424009b718517c338d5fc7669917"}]}
