)]}'
{"neutron/agent/linux/external_process.py":[{"author":{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"change_message_id":"23e9ac74b2ffa3169d15199286c31087be54c80f","unresolved":false,"context_lines":[{"line_number":125,"context_line":"            if os.path.isfile(os.path.join(self.kill_scripts_path, kill_file)):"},{"line_number":126,"context_line":"                utils.execute([kill_file, sig, pid],"},{"line_number":127,"context_line":"                              run_as_root\u003dself.run_as_root)"},{"line_number":128,"context_line":"        utils.kill_process(pid, sig, run_as_root\u003dself.run_as_root)"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"    def get_pid_file_name(self):"},{"line_number":131,"context_line":"        \"\"\"Returns the file name for a given kind of config file.\"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"5faad753_e407b481","line":128,"range":{"start_line":128,"start_character":8,"end_line":128,"end_character":13},"updated":"2019-09-12 13:25:17.000000000","message":"This should be in an else branch, we do not want to run kill if there was a kill script provided","commit_id":"24ed318768c3f63cfb5ac6198c2e1f64123186b2"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"b88e96b4b9acbfe780fca710c550b3008e3f0881","unresolved":false,"context_lines":[{"line_number":125,"context_line":"            if os.path.isfile(os.path.join(self.kill_scripts_path, kill_file)):"},{"line_number":126,"context_line":"                utils.execute([kill_file, sig, pid],"},{"line_number":127,"context_line":"                              run_as_root\u003dself.run_as_root)"},{"line_number":128,"context_line":"        utils.kill_process(pid, sig, run_as_root\u003dself.run_as_root)"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"    def get_pid_file_name(self):"},{"line_number":131,"context_line":"        \"\"\"Returns the file name for a given kind of config file.\"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"5faad753_642664d1","line":128,"range":{"start_line":128,"start_character":8,"end_line":128,"end_character":13},"in_reply_to":"5faad753_e407b481","updated":"2019-09-12 13:41:25.000000000","message":"Right! Actually what I need is to \"return\" after \"utils.execute\"\n\nThanks!","commit_id":"24ed318768c3f63cfb5ac6198c2e1f64123186b2"}],"neutron/agent/linux/utils.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"93ffe442afe4e75091179a25e3318e854484e08d","unresolved":false,"context_lines":[{"line_number":239,"context_line":"            if exc.errno in extra_ok_codes or not raise_exception:"},{"line_number":240,"context_line":"                ctxt.reraise \u003d False"},{"line_number":241,"context_line":"                return exc.errno"},{"line_number":242,"context_line":"    return 0"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"def _get_conf_base(cfg_root, uuid, ensure_conf_dir):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5faad753_d3734015","line":242,"updated":"2019-09-13 18:28:27.000000000","message":"I realize you\u0027re being thorough, but noone ever checks the return value of this, they expect it to raise on failure.  That is except for the test helper you changed :)","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"b35185ae8fa86c77889e3b338c3b42a45d138c4e","unresolved":false,"context_lines":[{"line_number":239,"context_line":"            if exc.errno in extra_ok_codes or not raise_exception:"},{"line_number":240,"context_line":"                ctxt.reraise \u003d False"},{"line_number":241,"context_line":"                return exc.errno"},{"line_number":242,"context_line":"    return 0"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"def _get_conf_base(cfg_root, uuid, ensure_conf_dir):"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_fc61ed3a","line":242,"in_reply_to":"3fa7e38b_c2669152","updated":"2019-09-18 08:22:04.000000000","message":"Done","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"d861866b62127a67edc0d89d731c92f2f78b5b45","unresolved":false,"context_lines":[{"line_number":239,"context_line":"            if exc.errno in extra_ok_codes or not raise_exception:"},{"line_number":240,"context_line":"                ctxt.reraise \u003d False"},{"line_number":241,"context_line":"                return exc.errno"},{"line_number":242,"context_line":"    return 0"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"def _get_conf_base(cfg_root, uuid, ensure_conf_dir):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5faad753_ba2e7e8f","line":242,"in_reply_to":"5faad753_b396b1ef","updated":"2019-09-16 07:54:36.000000000","message":"Reviewing this change again, I think that\u0027s OK returning those values. I\u0027m changing what the function is returning but IMO this change is valid. If the function works correctly, returns 0. If there is an error but this error is hidden, then returns the error code. And if there is an error, an exception is risen.\n\nIMO, this change is valid.","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"8ce79847421f4ca37486c0d119ad8395a82ce2eb","unresolved":false,"context_lines":[{"line_number":239,"context_line":"            if exc.errno in extra_ok_codes or not raise_exception:"},{"line_number":240,"context_line":"                ctxt.reraise \u003d False"},{"line_number":241,"context_line":"                return exc.errno"},{"line_number":242,"context_line":"    return 0"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"def _get_conf_base(cfg_root, uuid, ensure_conf_dir):"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_c2669152","line":242,"in_reply_to":"5faad753_ba2e7e8f","updated":"2019-09-18 00:33:13.000000000","message":"I agree this change is valid.\n\nI would suggest to add the above description to the docstring.","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"b9be32155c68714de83665b1df37d109c12c4cbe","unresolved":false,"context_lines":[{"line_number":239,"context_line":"            if exc.errno in extra_ok_codes or not raise_exception:"},{"line_number":240,"context_line":"                ctxt.reraise \u003d False"},{"line_number":241,"context_line":"                return exc.errno"},{"line_number":242,"context_line":"    return 0"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"def _get_conf_base(cfg_root, uuid, ensure_conf_dir):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5faad753_b396b1ef","line":242,"in_reply_to":"5faad753_d3734015","updated":"2019-09-15 19:01:07.000000000","message":"You are right, thanks! I\u0027ll change this.","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"}],"neutron/privileged/__init__.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"93ffe442afe4e75091179a25e3318e854484e08d","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    cfg_section\u003d\u0027privsep\u0027,"},{"line_number":36,"context_line":"    pypath\u003d__name__ + \u0027.kill\u0027,"},{"line_number":37,"context_line":"    capabilities\u003d[caps.CAP_KILL,"},{"line_number":38,"context_line":"                  ],"},{"line_number":39,"context_line":")"}],"source_content_type":"text/x-python","patch_set":5,"id":"5faad753_f370bc0a","line":38,"updated":"2019-09-13 18:28:27.000000000","message":"nit: empty line","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"b9be32155c68714de83665b1df37d109c12c4cbe","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    cfg_section\u003d\u0027privsep\u0027,"},{"line_number":36,"context_line":"    pypath\u003d__name__ + \u0027.kill\u0027,"},{"line_number":37,"context_line":"    capabilities\u003d[caps.CAP_KILL,"},{"line_number":38,"context_line":"                  ],"},{"line_number":39,"context_line":")"}],"source_content_type":"text/x-python","patch_set":5,"id":"5faad753_d39b2d15","line":38,"in_reply_to":"5faad753_f370bc0a","updated":"2019-09-15 19:01:07.000000000","message":"Done","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"}],"neutron/privileged/agent/linux/utils.py":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"9f37f30b5bd3f477da7322a679b326641c74e79b","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 Red Hat, Inc."},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":13,"id":"f9a0b0ba_319a1c93","line":1,"updated":"2021-03-22 08:37:14.000000000","message":"Should that be changed?","commit_id":"6109ad45235301b0f06681f6c0711b9f1efa8614"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"3f2b96b65c20b37c532b9e40ac894a0e2177192f","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 Red Hat, Inc."},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":13,"id":"871cd0d5_4ccae337","line":1,"in_reply_to":"f9a0b0ba_319a1c93","updated":"2021-03-22 08:57:41.000000000","message":"No, sorry. That was a problem in a cherry-pick. I\u0027ll take it back.","commit_id":"6109ad45235301b0f06681f6c0711b9f1efa8614"}],"neutron/tests/common/net_helpers.py":[{"author":{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"change_message_id":"ff6ac57955799a0d34ad5d31a7ccd1c7a19f7ef1","unresolved":false,"context_lines":[{"line_number":304,"context_line":"        pid \u003d self.child_pid or str(self.pid)"},{"line_number":305,"context_line":"        if utils.kill_process(pid, sig, run_as_root\u003dTrue,"},{"line_number":306,"context_line":"                              extra_ok_codes\u003d[errno.ESRCH]):"},{"line_number":307,"context_line":"            LOG.debug(\u0027Process %s did not exists already so it could not be \u0027"},{"line_number":308,"context_line":"                      \u0027killed\u0027, pid)"},{"line_number":309,"context_line":""},{"line_number":310,"context_line":"    def read_stdout(self, timeout\u003dNone):"},{"line_number":311,"context_line":"        return self._read_stream(self.stdout, timeout)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5faad753_0d49dace","line":308,"range":{"start_line":307,"start_character":12,"end_line":308,"end_character":36},"updated":"2019-09-12 09:30:40.000000000","message":"May be worth noting in commit message this fix too (that we do not fail test if process is not found)","commit_id":"aedffac999c08ffd35c98b04a11fa918ecc867a2"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"ccf81d52935deff119d3eefee316d6626d8c14a9","unresolved":false,"context_lines":[{"line_number":304,"context_line":"        pid \u003d self.child_pid or str(self.pid)"},{"line_number":305,"context_line":"        if utils.kill_process(pid, sig, run_as_root\u003dTrue,"},{"line_number":306,"context_line":"                              extra_ok_codes\u003d[errno.ESRCH]):"},{"line_number":307,"context_line":"            LOG.debug(\u0027Process %s did not exists already so it could not be \u0027"},{"line_number":308,"context_line":"                      \u0027killed\u0027, pid)"},{"line_number":309,"context_line":""},{"line_number":310,"context_line":"    def read_stdout(self, timeout\u003dNone):"},{"line_number":311,"context_line":"        return self._read_stream(self.stdout, timeout)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5faad753_b8a1e548","line":308,"range":{"start_line":307,"start_character":12,"end_line":308,"end_character":36},"in_reply_to":"5faad753_0d49dace","updated":"2019-09-12 10:54:12.000000000","message":"Agree, I\u0027ll add this in the commit message.","commit_id":"aedffac999c08ffd35c98b04a11fa918ecc867a2"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"93ffe442afe4e75091179a25e3318e854484e08d","unresolved":false,"context_lines":[{"line_number":305,"context_line":"        if utils.kill_process(pid, sig, run_as_root\u003dTrue,"},{"line_number":306,"context_line":"                              extra_ok_codes\u003d[errno.ESRCH]):"},{"line_number":307,"context_line":"            LOG.debug(\u0027Process %s did not exists already so it could not be \u0027"},{"line_number":308,"context_line":"                      \u0027killed\u0027, pid)"},{"line_number":309,"context_line":""},{"line_number":310,"context_line":"    def read_stdout(self, timeout\u003dNone):"},{"line_number":311,"context_line":"        return self._read_stream(self.stdout, timeout)"}],"source_content_type":"text/x-python","patch_set":5,"id":"5faad753_735e0c77","line":308,"updated":"2019-09-13 18:28:27.000000000","message":"This was the code from my other comment.","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"b9be32155c68714de83665b1df37d109c12c4cbe","unresolved":false,"context_lines":[{"line_number":305,"context_line":"        if utils.kill_process(pid, sig, run_as_root\u003dTrue,"},{"line_number":306,"context_line":"                              extra_ok_codes\u003d[errno.ESRCH]):"},{"line_number":307,"context_line":"            LOG.debug(\u0027Process %s did not exists already so it could not be \u0027"},{"line_number":308,"context_line":"                      \u0027killed\u0027, pid)"},{"line_number":309,"context_line":""},{"line_number":310,"context_line":"    def read_stdout(self, timeout\u003dNone):"},{"line_number":311,"context_line":"        return self._read_stream(self.stdout, timeout)"}],"source_content_type":"text/x-python","patch_set":5,"id":"5faad753_5302dd3e","line":308,"in_reply_to":"5faad753_735e0c77","updated":"2019-09-15 19:01:07.000000000","message":"Uhhh... I need more coffee.","commit_id":"2665c85ad68ea071eaca46b57879f70cbcf7b704"}]}
