aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2023-06-11 02:14:13 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-06-11 02:14:13 +0000
commitd9f88104bfaee146d378b4be7495a498b6cc3631 (patch)
tree93e5405f5926588e7dd9663c7faa0e9af96be97b
parent3e3044f70fd5f798f26f20a91ba47b500e6775dc (diff)
parente669af6414ef37f30e6a27a50f80b77620c244df (diff)
downloadrepohooks-d9f88104bfaee146d378b4be7495a498b6cc3631.tar.gz
Merge "pre-upload: handle Ctrl+C when running directly" am: e669af6414
Original change: https://android-review.googlesource.com/c/platform/tools/repohooks/+/2617576 Change-Id: I203bee471f75c44ce1450599614920e72f1ccf1c Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rwxr-xr-xpre-upload.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/pre-upload.py b/pre-upload.py
index cf97e10..5c820c6 100755
--- a/pre-upload.py
+++ b/pre-upload.py
@@ -22,6 +22,7 @@ when developing.
import argparse
import datetime
import os
+import signal
import sys
from typing import List, Optional
@@ -551,9 +552,13 @@ def direct_main(argv):
if not opts.project:
parser.error(f"Couldn't identify the project of {opts.dir}")
- if _run_projects_hooks([opts.project], [opts.dir], from_git=opts.git,
- commit_list=opts.commits):
- return 0
+ try:
+ if _run_projects_hooks([opts.project], [opts.dir], from_git=opts.git,
+ commit_list=opts.commits):
+ return 0
+ except KeyboardInterrupt:
+ print('Aborting execution early due to user interrupt', file=sys.stderr)
+ return 128 + signal.SIGINT
return 1