)]}'
{"tests/test_fernet_rotate_cron_generator.py":[{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"489f3610d2df309e569dc17b623408897c2dbc0d","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from oslotest import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"def load_module(name, path):"},{"line_number":23,"context_line":"    module_spec \u003d importlib.util.spec_from_file_location("},{"line_number":24,"context_line":"        name, path"},{"line_number":25,"context_line":"    )"},{"line_number":26,"context_line":"    module \u003d importlib.util.module_from_spec(module_spec)"},{"line_number":27,"context_line":"    module_spec.loader.exec_module(module)"},{"line_number":28,"context_line":"    return module"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"this_dir \u003d os.path.dirname(sys.modules[__name__].__file__)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_99579727","line":28,"range":{"start_line":22,"start_character":0,"end_line":28,"end_character":17},"updated":"2020-08-31 08:55:42.000000000","message":"let\u0027s refactor it to one place (test/utils?)","commit_id":"32b22ab237f27f2a71dfbad80e16c57c8799dbf1"},{"author":{"_account_id":32067,"name":"Linhui Zhou","email":"df.some@foxmail.com","username":"zhoulinhui"},"change_message_id":"3d1fd83116440c60b6b58c7315657302d8c35dd3","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from oslotest import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"def load_module(name, path):"},{"line_number":23,"context_line":"    module_spec \u003d importlib.util.spec_from_file_location("},{"line_number":24,"context_line":"        name, path"},{"line_number":25,"context_line":"    )"},{"line_number":26,"context_line":"    module \u003d importlib.util.module_from_spec(module_spec)"},{"line_number":27,"context_line":"    module_spec.loader.exec_module(module)"},{"line_number":28,"context_line":"    return module"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"this_dir \u003d os.path.dirname(sys.modules[__name__].__file__)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_92080992","line":28,"range":{"start_line":22,"start_character":0,"end_line":28,"end_character":17},"in_reply_to":"9f560f44_99579727","updated":"2020-08-31 15:16:40.000000000","message":"Done","commit_id":"32b22ab237f27f2a71dfbad80e16c57c8799dbf1"}],"tests/test_kolla_docker.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"dfd2bb569ed616086409cc904ba2a54d748094d5","unresolved":false,"context_lines":[{"line_number":16,"context_line":"# FIXME(yoctozepto): tests do not imitate how ansible would handle module args"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import copy"},{"line_number":19,"context_line":"import importlib "},{"line_number":20,"context_line":"import os"},{"line_number":21,"context_line":"import sys"},{"line_number":22,"context_line":"from unittest import mock"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_a817b054","line":19,"updated":"2020-08-29 18:14:52.000000000","message":"linters: W291 trailing whitespace","commit_id":"cba398823be61b09ebbc7c75f5994bb38141c57a"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"dfd2bb569ed616086409cc904ba2a54d748094d5","unresolved":false,"context_lines":[{"line_number":16,"context_line":"# FIXME(yoctozepto): tests do not imitate how ansible would handle module args"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import copy"},{"line_number":19,"context_line":"import importlib "},{"line_number":20,"context_line":"import os"},{"line_number":21,"context_line":"import sys"},{"line_number":22,"context_line":"from unittest import mock"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_881c6c78","line":19,"updated":"2020-08-29 18:14:52.000000000","message":"pep8: W291 trailing whitespace","commit_id":"cba398823be61b09ebbc7c75f5994bb38141c57a"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"338a9bae10567eafd41ffc83856afc3e1ddaf9c3","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    module_spec.loader.exec_module(module)"},{"line_number":35,"context_line":"    return module"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"this_dir \u003d os.path.dirname(sys.modules[__name__].__file__)"},{"line_number":38,"context_line":"kolla_docker_file \u003d os.path.join(this_dir, \u0027..\u0027, \u0027ansible\u0027,"},{"line_number":39,"context_line":"                                 \u0027library\u0027, \u0027kolla_docker.py\u0027)"},{"line_number":40,"context_line":"kd \u003d load_module(\u0027kolla_docker\u0027, kolla_docker_file)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_e1da6349","line":37,"updated":"2020-08-30 13:52:18.000000000","message":"linters: E305 expected 2 blank lines after class or function definition, found 1","commit_id":"cbe69ef110e8ccc3effca26441a6447e95edd97a"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"338a9bae10567eafd41ffc83856afc3e1ddaf9c3","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    module_spec.loader.exec_module(module)"},{"line_number":35,"context_line":"    return module"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"this_dir \u003d os.path.dirname(sys.modules[__name__].__file__)"},{"line_number":38,"context_line":"kolla_docker_file \u003d os.path.join(this_dir, \u0027..\u0027, \u0027ansible\u0027,"},{"line_number":39,"context_line":"                                 \u0027library\u0027, \u0027kolla_docker.py\u0027)"},{"line_number":40,"context_line":"kd \u003d load_module(\u0027kolla_docker\u0027, kolla_docker_file)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_c1df5f38","line":37,"updated":"2020-08-30 13:52:18.000000000","message":"pep8: E305 expected 2 blank lines after class or function definition, found 1","commit_id":"cbe69ef110e8ccc3effca26441a6447e95edd97a"},{"author":{"_account_id":32067,"name":"Linhui Zhou","email":"df.some@foxmail.com","username":"zhoulinhui"},"change_message_id":"22c478a4f0f0da544a1910dd57da20d3592ec7e6","unresolved":false,"context_lines":[{"line_number":221,"context_line":"        module_mock.fail_json.assert_called_once_with("},{"line_number":222,"context_line":"            changed\u003dTrue, msg\u003drepr(\"Some very ugly traceback\"))"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"    @mock.patch(\"kolla_docker.DockerWorker\")"},{"line_number":225,"context_line":"    @mock.patch(\"kolla_docker.generate_module\")"},{"line_number":226,"context_line":"    def test_execute_module(self, mock_generate_module, mock_dw):"},{"line_number":227,"context_line":"        mock_dw.return_value.check_image.return_value \u003d False"}],"source_content_type":"text/x-python","patch_set":13,"id":"9f560f44_5c857fac","line":224,"range":{"start_line":224,"start_character":17,"end_line":224,"end_character":29},"updated":"2020-09-07 15:36:01.000000000","message":"@Radosław Piliszek\nhello, Radosław , could you please give us some advice about the ModuleNotFoundError: No module named \u0027kolla_docker\u0027\"","commit_id":"84bcc4011453067bee00ce5f035284035bf3b982"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"93c8ff4c981f64e2f282a7aebe25b8f3a8f649d0","unresolved":false,"context_lines":[{"line_number":221,"context_line":"        module_mock.fail_json.assert_called_once_with("},{"line_number":222,"context_line":"            changed\u003dTrue, msg\u003drepr(\"Some very ugly traceback\"))"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"    @mock.patch(\"kolla_docker.DockerWorker\")"},{"line_number":225,"context_line":"    @mock.patch(\"kolla_docker.generate_module\")"},{"line_number":226,"context_line":"    def test_execute_module(self, mock_generate_module, mock_dw):"},{"line_number":227,"context_line":"        mock_dw.return_value.check_image.return_value \u003d False"}],"source_content_type":"text/x-python","patch_set":13,"id":"9f560f44_1f6e59ff","line":224,"range":{"start_line":224,"start_character":17,"end_line":224,"end_character":29},"in_reply_to":"9f560f44_5c857fac","updated":"2020-09-07 16:39:48.000000000","message":"Let\u0027s try it this way.","commit_id":"84bcc4011453067bee00ce5f035284035bf3b982"}],"tests/test_merge_config.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"dfd2bb569ed616086409cc904ba2a54d748094d5","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":14,"context_line":"# limitations under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import importlib "},{"line_number":17,"context_line":"import os"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from io import StringIO"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_e811a85f","line":16,"updated":"2020-08-29 18:14:52.000000000","message":"linters: W291 trailing whitespace","commit_id":"cba398823be61b09ebbc7c75f5994bb38141c57a"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"dfd2bb569ed616086409cc904ba2a54d748094d5","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":14,"context_line":"# limitations under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import importlib "},{"line_number":17,"context_line":"import os"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from io import StringIO"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_c8166456","line":16,"updated":"2020-08-29 18:14:52.000000000","message":"pep8: W291 trailing whitespace","commit_id":"cba398823be61b09ebbc7c75f5994bb38141c57a"}]}
