From 7cf3c96a3ba9daa1d941b018c250a6f927ff6b46 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Aug 27 2018 19:17:12 +0000 Subject: Include the git show HEAD line in the try/except block This fixes loading the content of skipping over files containing characters that fail to be encoded properly. Signed-off-by: Pierre-Yves Chibon --- diff --git a/pagure/lib/tasks_services.py b/pagure/lib/tasks_services.py index efa4dc6..e9c32df 100644 --- a/pagure/lib/tasks_services.py +++ b/pagure/lib/tasks_services.py @@ -313,19 +313,19 @@ def load_json_commits_to_db( n, ) tmp = "Loading: %s -- %s/%s" % (filename, idx + 1, n) - json_data = None - data = "".join( - pagure.lib.git.read_git_lines( - ["show", "HEAD:%s" % filename], abspath + try: + json_data = None + data = "".join( + pagure.lib.git.read_git_lines( + ["show", "HEAD:%s" % filename], abspath + ) ) - ) - if data and not filename.startswith("files/"): - try: - json_data = json.loads(data) - except ValueError: - pass - if json_data: - try: + if data and not filename.startswith("files/"): + try: + json_data = json.loads(data) + except ValueError: + pass + if json_data: if data_type == "ticket": pagure.lib.git.update_ticket_from_git( session, @@ -346,17 +346,17 @@ def load_json_commits_to_db( json_data=json_data, ) tmp += " ... ... Done" - except Exception as err: - _log.info("data: %s", json_data) - session.rollback() - _log.exception(err) - tmp += " ... ... FAILED\n" - tmp += format_callstack() - break - finally: + else: + tmp += " ... ... SKIPPED - No JSON data" mail_body.append(tmp) - else: - tmp += " ... ... SKIPPED - No JSON data" + except Exception as err: + _log.info("data: %s", json_data) + session.rollback() + _log.exception(err) + tmp += " ... ... FAILED\n" + tmp += format_callstack() + break + finally: mail_body.append(tmp) try: