)]}'
{"zuul/lib/ansible.py":[{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"c98aaa6cb8afe82522d9f3ddc0024ac6bbb4552a","unresolved":false,"context_lines":[{"line_number":229,"context_line":"            raise Exception(\u0027Requested ansible version %s not found\u0027 % version)"},{"line_number":230,"context_line":"        return ansible"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"    def getAraCallbackPlugin(self, version):"},{"line_number":233,"context_line":"        result \u003d None"},{"line_number":234,"context_line":"        try:"},{"line_number":235,"context_line":"            _python \u003d self.getAnsibleCommand(version, \u0027python\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_2b559c1d","line":232,"updated":"2019-04-17 17:40:12.000000000","message":"I think we should annotate this with lru_cache [1] to avoid the frequent penalty of needlessly creating a python process just for getting the paths (takes 0.2s per run on my laptop). The max size can be low (at least the number of supported ansible versions).\n\n[1] https://docs.python.org/3/library/functools.html#functools.lru_cache","commit_id":"638ba8fd2d1093923fb5205a05d2739dbf3937f4"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"71a033cdca0366efe89b2664299bb4f17cc1ba30","unresolved":false,"context_lines":[{"line_number":230,"context_line":"            raise Exception(\u0027Requested ansible version %s not found\u0027 % version)"},{"line_number":231,"context_line":"        return ansible"},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"    @functools.lru_cache(maxsize\u003d3)"},{"line_number":234,"context_line":"    def getAraCallbackPlugin(self, version):"},{"line_number":235,"context_line":"        result \u003d None"},{"line_number":236,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"ffb9cba7_ba97ef90","line":233,"updated":"2019-04-23 13:59:45.000000000","message":"We could increase this to support more versions.","commit_id":"60a15a2f6c806ec1a4461a086c12ae9f6cc8c061"},{"author":{"_account_id":4162,"name":"Paul Belanger","email":"pabelanger@redhat.com","username":"pabelanger"},"change_message_id":"2632bf8a50d6e81b63d0163577bac9acb865faa0","unresolved":false,"context_lines":[{"line_number":242,"context_line":"                check\u003dTrue).stdout.decode().strip()"},{"line_number":243,"context_line":"            self.log.info("},{"line_number":244,"context_line":"                \u0027Ansible version %s ARA callback plugin: %s\u0027, version, result)"},{"line_number":245,"context_line":"        except Exception:"},{"line_number":246,"context_line":"            self.log.exception("},{"line_number":247,"context_line":"                \u0027Ansible version %s ARA not installed\u0027 % version)"},{"line_number":248,"context_line":"        return result"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fce034c_26f9514c","line":245,"updated":"2019-04-17 18:30:30.000000000","message":"maybe this should be silent over exception","commit_id":"60a15a2f6c806ec1a4461a086c12ae9f6cc8c061"},{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"4921a548efbd67a6a64fb421050b366b24c0262f","unresolved":false,"context_lines":[{"line_number":242,"context_line":"                check\u003dTrue).stdout.decode().strip()"},{"line_number":243,"context_line":"            self.log.info("},{"line_number":244,"context_line":"                \u0027Ansible version %s ARA callback plugin: %s\u0027, version, result)"},{"line_number":245,"context_line":"        except Exception:"},{"line_number":246,"context_line":"            self.log.exception("},{"line_number":247,"context_line":"                \u0027Ansible version %s ARA not installed\u0027 % version)"},{"line_number":248,"context_line":"        return result"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fce034c_866da505","line":245,"in_reply_to":"3fce034c_26f9514c","updated":"2019-04-17 18:33:59.000000000","message":"This depends if we decide to always use ara or not (with upstream zuul, every ansible venv has ara).","commit_id":"60a15a2f6c806ec1a4461a086c12ae9f6cc8c061"}]}
