From b1e3c16a7c1877d5e95a0ecb9e807fc2373cbc28 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Mar 02 2015 11:03:34 +0000 Subject: Adjust the progit_hook to catch SQLAlchemy exceptions --- diff --git a/progit/hooks/files/progit_hook.py b/progit/hooks/files/progit_hook.py index 40545bb..f1f0aab 100644 --- a/progit/hooks/files/progit_hook.py +++ b/progit/hooks/files/progit_hook.py @@ -135,6 +135,9 @@ def relates_commit(commitid, issueid, project=None): progit.SESSION.commit() except progit.exceptions.ProgitException as err: print err + except SQLAlchemyError, err: # pragma: no cover + progit.SESSION.rollback() + progit.APP.logger.exception(err) def fixes_commit(commitid, issueid, project=None): @@ -167,6 +170,9 @@ def fixes_commit(commitid, issueid, project=None): progit.SESSION.commit() except progit.exceptions.ProgitException as err: print err + except SQLAlchemyError, err: # pragma: no cover + progit.SESSION.rollback() + progit.APP.logger.exception(err) branches = [ item.replace('* ', '') for item in read_git_lines( @@ -184,6 +190,9 @@ def fixes_commit(commitid, issueid, project=None): progit.SESSION.commit() except progit.exceptions.ProgitException as err: print err + except SQLAlchemyError, err: # pragma: no cover + progit.SESSION.rollback() + progit.APP.logger.exception(err) def get_commits_id(fromrev, torev):