Skip printing status if we CTRL-c out

No need to print status if the user interrupts the compile. Status is
always (all tasks done) since the remaining tasks will have been
canceled.

Change-Id: I3c4e5ff867cfd460aa357197f09276d128b00e01
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/6207097
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Auto-Submit: Mohamed Heikal <mheikal@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
changes/97/6207097/2
Mohamed Heikal 4 months ago committed by LUCI CQ
parent dc2edc59f6
commit 03aad37858

@ -10,6 +10,8 @@ import subprocess
import gclient_paths
# Keeps track of whether our SIGINT handler was called.
_is_canceled = False
def _register_build_id(local_dev_server_path, build_id):
subprocess.run([
@ -31,6 +33,8 @@ def _set_signal_handler(local_dev_server_path, build_id):
original_sigint_handler = signal.getsignal(signal.SIGINT)
def _kill_handler(signum, frame):
global _is_canceled
_is_canceled = True
# Cancel the pending build tasks if user CTRL+c early.
print('Canceling pending build_server tasks', file=sys.stderr)
subprocess.run([local_dev_server_path, '--cancel-build', build_id])
@ -61,4 +65,6 @@ def build_server_context(build_id, use_android_build_server=False):
_register_build_id(server_path, build_id)
_set_signal_handler(server_path, build_id)
yield
_print_status(server_path, build_id)
# No need to print status if we CTRL+Ced out.
if (not _is_canceled):
_print_status(server_path, build_id)

Loading…
Cancel
Save