)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"ba9f354c37fc62a00c599f69aa1bbddc69234318","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"b18a5a6a_5e5c6ccc","updated":"2021-12-22 08:30:12.000000000","message":"recheck","commit_id":"bcf42eb852ac4e8ed8c622fd5804979dff4a716e"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"031e778a1f98a20b2e54b301e412016e08858418","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"61845716_2f3d75f3","updated":"2022-01-12 06:40:04.000000000","message":"recheck","commit_id":"6492f096578ad4cc786c23d9480fc90e8dba1329"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"1d12ed9e4e5aba14ba835c84e048891748c47d8e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"57b34d22_007c69d5","updated":"2022-01-12 17:20:30.000000000","message":"Looks like the test timed out on ipv6 gate.","commit_id":"5fcc05065ccb2f613474d7fb75e1bce6e521c191"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"471dd7fa4dcbb7cbbd7ba0eee2f5a4f943f16319","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"24518e55_9b99b5aa","updated":"2022-01-15 19:14:02.000000000","message":"recheck","commit_id":"2ffdd2f47560087a242a3731f831dfb51ed2b149"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"97fe07c27b90c960a1c436b55e9c898aec5e972e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"47c6d68d_54dfbb60","updated":"2022-01-17 08:14:35.000000000","message":"recheck","commit_id":"2ffdd2f47560087a242a3731f831dfb51ed2b149"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"427ad464669d00a6c4cbcda9229b21dfc8302c04","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"8a8a6333_64e25432","updated":"2022-01-15 10:01:33.000000000","message":"recheck","commit_id":"2ffdd2f47560087a242a3731f831dfb51ed2b149"}],"kuryr_tempest_plugin/tests/scenario/base.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"bc445cb329a75105adae1bd90e45ce5ff50ff6fb","unresolved":true,"context_lines":[{"line_number":297,"context_line":"        pods \u003d cls.get_pod_name_list(namespace\u003dnamespace,"},{"line_number":298,"context_line":"                                     label_selector\u003dlabel)"},{"line_number":299,"context_line":"        status_pods \u003d sum("},{"line_number":300,"context_line":"            filter(None, [cls.get_pod_status(p) \u003d\u003d status for p in pods]))"},{"line_number":301,"context_line":"        return (num_pods \u003d\u003d status_pods)"},{"line_number":302,"context_line":""},{"line_number":303,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":8,"id":"ccbf67ce_e2d7d55a","line":300,"range":{"start_line":300,"start_character":12,"end_line":300,"end_character":23},"updated":"2021-12-24 10:26:11.000000000","message":"`cls.get_pod_status(p) \u003d\u003d status` can\u0027t ever be None, right?","commit_id":"67874b1f92059792a0e33c87897280914bad8dc2"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"0be0d23b517d1b0939dfce78113f616fc9e7a006","unresolved":false,"context_lines":[{"line_number":297,"context_line":"        pods \u003d cls.get_pod_name_list(namespace\u003dnamespace,"},{"line_number":298,"context_line":"                                     label_selector\u003dlabel)"},{"line_number":299,"context_line":"        status_pods \u003d sum("},{"line_number":300,"context_line":"            filter(None, [cls.get_pod_status(p) \u003d\u003d status for p in pods]))"},{"line_number":301,"context_line":"        return (num_pods \u003d\u003d status_pods)"},{"line_number":302,"context_line":""},{"line_number":303,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":8,"id":"54e0b300_386ff613","line":300,"range":{"start_line":300,"start_character":12,"end_line":300,"end_character":23},"in_reply_to":"ccbf67ce_e2d7d55a","updated":"2022-01-03 11:10:32.000000000","message":"You\u0027re right, done","commit_id":"67874b1f92059792a0e33c87897280914bad8dc2"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"bc445cb329a75105adae1bd90e45ce5ff50ff6fb","unresolved":true,"context_lines":[{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    def create_deployment(self, deployment_name\u003dNone, api_version\u003d\"apps/v1\","},{"line_number":417,"context_line":"                          kind\u003d\"Deployment\", namespace\u003d\"default\","},{"line_number":418,"context_line":"                          labels\u003d{\"app\": \"demo\"}, probe\u003dFalse):"},{"line_number":419,"context_line":"        api_instance \u003d kubernetes.client.AppsV1Api()"},{"line_number":420,"context_line":"        if not deployment_name:"},{"line_number":421,"context_line":"            deployment_name \u003d data_utils.rand_name(prefix\u003d\u0027kuryr-deployment\u0027)"}],"source_content_type":"text/x-python","patch_set":8,"id":"653e36fd_23cb90be","line":418,"range":{"start_line":418,"start_character":50,"end_line":418,"end_character":55},"updated":"2021-12-24 10:26:11.000000000","message":"It\u0027s a dummy probe that will always fail, let\u0027s name it accordingly \"dummy_probe\" or \"failing_probe\" seem right.","commit_id":"67874b1f92059792a0e33c87897280914bad8dc2"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"0be0d23b517d1b0939dfce78113f616fc9e7a006","unresolved":false,"context_lines":[{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    def create_deployment(self, deployment_name\u003dNone, api_version\u003d\"apps/v1\","},{"line_number":417,"context_line":"                          kind\u003d\"Deployment\", namespace\u003d\"default\","},{"line_number":418,"context_line":"                          labels\u003d{\"app\": \"demo\"}, probe\u003dFalse):"},{"line_number":419,"context_line":"        api_instance \u003d kubernetes.client.AppsV1Api()"},{"line_number":420,"context_line":"        if not deployment_name:"},{"line_number":421,"context_line":"            deployment_name \u003d data_utils.rand_name(prefix\u003d\u0027kuryr-deployment\u0027)"}],"source_content_type":"text/x-python","patch_set":8,"id":"e7a626b5_813685fd","line":418,"range":{"start_line":418,"start_character":50,"end_line":418,"end_character":55},"in_reply_to":"653e36fd_23cb90be","updated":"2022-01-03 11:10:32.000000000","message":"Done","commit_id":"67874b1f92059792a0e33c87897280914bad8dc2"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"1d12ed9e4e5aba14ba835c84e048891748c47d8e","unresolved":true,"context_lines":[{"line_number":292,"context_line":"        return (num_pods \u003d\u003d ready_pods)"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"    @classmethod"},{"line_number":295,"context_line":"    def get_pods_status_num(cls, namespace\u003d\"default\", label\u003d\"\", num_pods\u003d1,"},{"line_number":296,"context_line":"                            status\u003d\"Running\"):"},{"line_number":297,"context_line":"        pods \u003d cls.get_pod_name_list(namespace\u003dnamespace,"},{"line_number":298,"context_line":"                                     label_selector\u003dlabel)"}],"source_content_type":"text/x-python","patch_set":16,"id":"011955a4_10330549","line":295,"range":{"start_line":295,"start_character":8,"end_line":295,"end_character":27},"updated":"2022-01-12 17:20:30.000000000","message":"This is more of a \"check_pods_status_num\" as it returns a boolean.","commit_id":"5fcc05065ccb2f613474d7fb75e1bce6e521c191"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"07beb1cbcd3ca63dc43fdb7947e276c6aa5dee97","unresolved":false,"context_lines":[{"line_number":292,"context_line":"        return (num_pods \u003d\u003d ready_pods)"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"    @classmethod"},{"line_number":295,"context_line":"    def get_pods_status_num(cls, namespace\u003d\"default\", label\u003d\"\", num_pods\u003d1,"},{"line_number":296,"context_line":"                            status\u003d\"Running\"):"},{"line_number":297,"context_line":"        pods \u003d cls.get_pod_name_list(namespace\u003dnamespace,"},{"line_number":298,"context_line":"                                     label_selector\u003dlabel)"}],"source_content_type":"text/x-python","patch_set":16,"id":"e561aa72_799cb6b2","line":295,"range":{"start_line":295,"start_character":8,"end_line":295,"end_character":27},"in_reply_to":"011955a4_10330549","updated":"2022-01-13 12:53:31.000000000","message":"That\u0027s true, changed get_pods_ready_num() to check_pods_ready_num() as well.","commit_id":"5fcc05065ccb2f613474d7fb75e1bce6e521c191"}],"kuryr_tempest_plugin/tests/scenario/test_service.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"bc445cb329a75105adae1bd90e45ce5ff50ff6fb","unresolved":true,"context_lines":[{"line_number":345,"context_line":"        self.check_service_internal_connectivity(service_name\u003dservice_name)"},{"line_number":346,"context_line":""},{"line_number":347,"context_line":""},{"line_number":348,"context_line":"class TestServiceWithNotReadyEndpoints(base.BaseKuryrScenarioTest):"},{"line_number":349,"context_line":""},{"line_number":350,"context_line":"    @classmethod"},{"line_number":351,"context_line":"    def skip_checks(cls):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3b100aa4_b3a294b0","line":348,"range":{"start_line":348,"start_character":6,"end_line":348,"end_character":38},"updated":"2021-12-24 10:26:11.000000000","message":"What\u0027s the reason to put this into a separate scenario?","commit_id":"67874b1f92059792a0e33c87897280914bad8dc2"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"0be0d23b517d1b0939dfce78113f616fc9e7a006","unresolved":true,"context_lines":[{"line_number":345,"context_line":"        self.check_service_internal_connectivity(service_name\u003dservice_name)"},{"line_number":346,"context_line":""},{"line_number":347,"context_line":""},{"line_number":348,"context_line":"class TestServiceWithNotReadyEndpoints(base.BaseKuryrScenarioTest):"},{"line_number":349,"context_line":""},{"line_number":350,"context_line":"    @classmethod"},{"line_number":351,"context_line":"    def skip_checks(cls):"}],"source_content_type":"text/x-python","patch_set":8,"id":"cdf6f5cb_4343dccc","line":348,"range":{"start_line":348,"start_character":6,"end_line":348,"end_character":38},"in_reply_to":"3b100aa4_b3a294b0","updated":"2022-01-03 11:10:32.000000000","message":"The only scenario I see this test can fit in is \u0027TestServiceScenario\u0027 but it\u0027s creating a service (it calls create_setup_for_service_test()) as part of the scenario setup, which wouldn\u0027t be necessary for this test. Let me know if you have any suggestion.","commit_id":"67874b1f92059792a0e33c87897280914bad8dc2"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"bc445cb329a75105adae1bd90e45ce5ff50ff6fb","unresolved":true,"context_lines":[{"line_number":382,"context_line":"                                              spec_type\u003d\u0027ClusterIP\u0027)"},{"line_number":383,"context_line":"        self.addCleanup(self.delete_service, service_name)"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"        # Check Kuryr pods are not restarted"},{"line_number":386,"context_line":"        self.check_controller_pod_status_for_time_period("},{"line_number":387,"context_line":"            retry_attempts\u003d10,"},{"line_number":388,"context_line":"            time_between_attempts\u003d3,"},{"line_number":389,"context_line":"            status\u003d\u0027Running\u0027)"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"        # Get current Kuryr pods restart count"},{"line_number":392,"context_line":"        container_restarts_after \u003d self.get_pod_containers_restarts("}],"source_content_type":"text/x-python","patch_set":8,"id":"c11b9a73_0d552328","line":389,"range":{"start_line":385,"start_character":0,"end_line":389,"end_character":29},"updated":"2021-12-24 10:26:11.000000000","message":"One day we\u0027ll stop restarting kuryr-controller on failures (I\u0027m strong supporter of that) and this will become useless. I don\u0027t have a better idea though, so let\u0027s go with this.","commit_id":"67874b1f92059792a0e33c87897280914bad8dc2"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"0be0d23b517d1b0939dfce78113f616fc9e7a006","unresolved":false,"context_lines":[{"line_number":382,"context_line":"                                              spec_type\u003d\u0027ClusterIP\u0027)"},{"line_number":383,"context_line":"        self.addCleanup(self.delete_service, service_name)"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"        # Check Kuryr pods are not restarted"},{"line_number":386,"context_line":"        self.check_controller_pod_status_for_time_period("},{"line_number":387,"context_line":"            retry_attempts\u003d10,"},{"line_number":388,"context_line":"            time_between_attempts\u003d3,"},{"line_number":389,"context_line":"            status\u003d\u0027Running\u0027)"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"        # Get current Kuryr pods restart count"},{"line_number":392,"context_line":"        container_restarts_after \u003d self.get_pod_containers_restarts("}],"source_content_type":"text/x-python","patch_set":8,"id":"39824bd6_4cfcf3c2","line":389,"range":{"start_line":385,"start_character":0,"end_line":389,"end_character":29},"in_reply_to":"c11b9a73_0d552328","updated":"2022-01-03 11:10:32.000000000","message":"Ack, when that happens this test should be adapted.","commit_id":"67874b1f92059792a0e33c87897280914bad8dc2"},{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"121b208dbd9fcc636c11675d0c24e0df74720a47","unresolved":true,"context_lines":[{"line_number":362,"context_line":""},{"line_number":363,"context_line":"        # Wait until the deployment\u0027s pods are running"},{"line_number":364,"context_line":"        res \u003d test_utils.call_until_true("},{"line_number":365,"context_line":"            self.get_pods_status_num, 300, 5, namespace\u003d\u0027default\u0027,"},{"line_number":366,"context_line":"            label\u003d\u0027app\u003ddemo\u0027, num_pods\u003d3)"},{"line_number":367,"context_line":"        self.assertTrue(res, \u0027Timed out waiting for pods to be running\u0027)"},{"line_number":368,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"4511903f_67edb1dc","line":365,"range":{"start_line":365,"start_character":38,"end_line":365,"end_character":45},"updated":"2022-01-03 16:01:13.000000000","message":"it\u0027s worth to create constant for these values","commit_id":"5a62cea2574c72ca435f4a75b21cc8ca13d30a5b"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"ca352e47048ee6a45aaec0e4492b9e9a3ca33be5","unresolved":false,"context_lines":[{"line_number":362,"context_line":""},{"line_number":363,"context_line":"        # Wait until the deployment\u0027s pods are running"},{"line_number":364,"context_line":"        res \u003d test_utils.call_until_true("},{"line_number":365,"context_line":"            self.get_pods_status_num, 300, 5, namespace\u003d\u0027default\u0027,"},{"line_number":366,"context_line":"            label\u003d\u0027app\u003ddemo\u0027, num_pods\u003d3)"},{"line_number":367,"context_line":"        self.assertTrue(res, \u0027Timed out waiting for pods to be running\u0027)"},{"line_number":368,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"8ca09e21_02b74219","line":365,"range":{"start_line":365,"start_character":38,"end_line":365,"end_character":45},"in_reply_to":"4511903f_67edb1dc","updated":"2022-01-05 13:11:31.000000000","message":"Done","commit_id":"5a62cea2574c72ca435f4a75b21cc8ca13d30a5b"},{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"121b208dbd9fcc636c11675d0c24e0df74720a47","unresolved":true,"context_lines":[{"line_number":367,"context_line":"        self.assertTrue(res, \u0027Timed out waiting for pods to be running\u0027)"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":"        # Wait until the pods are not ready"},{"line_number":370,"context_line":"        self.wait_for_status(120, 4, self.get_pods_ready_num,"},{"line_number":371,"context_line":"                             namespace\u003d\u0027default\u0027, label\u003d\u0027app\u003ddemo\u0027,"},{"line_number":372,"context_line":"                             num_pods\u003d0)"},{"line_number":373,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"8b77a90a_99f6fa02","line":370,"range":{"start_line":370,"start_character":29,"end_line":370,"end_character":36},"updated":"2022-01-03 16:01:13.000000000","message":"ditto","commit_id":"5a62cea2574c72ca435f4a75b21cc8ca13d30a5b"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"ca352e47048ee6a45aaec0e4492b9e9a3ca33be5","unresolved":false,"context_lines":[{"line_number":367,"context_line":"        self.assertTrue(res, \u0027Timed out waiting for pods to be running\u0027)"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":"        # Wait until the pods are not ready"},{"line_number":370,"context_line":"        self.wait_for_status(120, 4, self.get_pods_ready_num,"},{"line_number":371,"context_line":"                             namespace\u003d\u0027default\u0027, label\u003d\u0027app\u003ddemo\u0027,"},{"line_number":372,"context_line":"                             num_pods\u003d0)"},{"line_number":373,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"b1882268_bb824ef4","line":370,"range":{"start_line":370,"start_character":29,"end_line":370,"end_character":36},"in_reply_to":"8b77a90a_99f6fa02","updated":"2022-01-05 13:11:31.000000000","message":"Done","commit_id":"5a62cea2574c72ca435f4a75b21cc8ca13d30a5b"},{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"121b208dbd9fcc636c11675d0c24e0df74720a47","unresolved":true,"context_lines":[{"line_number":386,"context_line":"        self.check_controller_pod_status_for_time_period("},{"line_number":387,"context_line":"            retry_attempts\u003d10,"},{"line_number":388,"context_line":"            time_between_attempts\u003d3,"},{"line_number":389,"context_line":"            status\u003d\u0027Running\u0027)"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"        # Get current Kuryr pods restart count"},{"line_number":392,"context_line":"        container_restarts_after \u003d self.get_pod_containers_restarts("}],"source_content_type":"text/x-python","patch_set":9,"id":"e690cd50_d7c92fbd","line":389,"range":{"start_line":389,"start_character":12,"end_line":389,"end_character":28},"updated":"2022-01-03 16:01:13.000000000","message":"the default is already Running, no need to specify again.\n\nAlso, I know it\u0027s out of scope of this patch, but it might be worth to change the method check_controller_pod_status_for_time_period to take into account the status defined in the parameter.\nhttps://github.com/openstack/kuryr-tempest-plugin/blob/13e740911c448105f9748527e3f6c21265640fd7/kuryr_tempest_plugin/tests/scenario/base.py#L1259","commit_id":"5a62cea2574c72ca435f4a75b21cc8ca13d30a5b"},{"author":{"_account_id":27086,"name":"Jon Uriarte","email":"juriarte@redhat.com","username":"juriarte"},"change_message_id":"ca352e47048ee6a45aaec0e4492b9e9a3ca33be5","unresolved":false,"context_lines":[{"line_number":386,"context_line":"        self.check_controller_pod_status_for_time_period("},{"line_number":387,"context_line":"            retry_attempts\u003d10,"},{"line_number":388,"context_line":"            time_between_attempts\u003d3,"},{"line_number":389,"context_line":"            status\u003d\u0027Running\u0027)"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"        # Get current Kuryr pods restart count"},{"line_number":392,"context_line":"        container_restarts_after \u003d self.get_pod_containers_restarts("}],"source_content_type":"text/x-python","patch_set":9,"id":"8baa8818_92087a51","line":389,"range":{"start_line":389,"start_character":12,"end_line":389,"end_character":28},"in_reply_to":"e690cd50_d7c92fbd","updated":"2022-01-05 13:11:31.000000000","message":"Done,\n\nAbout the method check_controller_pod_status_for_time_period, although it seems a pretty small change I can address it in a separate patch","commit_id":"5a62cea2574c72ca435f4a75b21cc8ca13d30a5b"}]}
