Add control-c signal handler

Control-c dumps python stack trace.  Instead, just exit cleanly by
hooking SIGINT.

Signed-off-by: Ryan Harper <ryan.harper@canonical.com>
This commit is contained in:
Ryan Harper 2015-10-21 10:18:34 -05:00
parent 4d8f113b10
commit aba2963779
1 changed files with 6 additions and 0 deletions

View File

@ -17,6 +17,7 @@
import argparse
import sys
import logging
import signal
from subiquity.log import setup_logger
from subiquity import __version__ as VERSION
from subiquity.core import Controller as Subiquity
@ -42,6 +43,9 @@ def parse_options(argv):
return parser.parse_args(argv)
def control_c_handler(signum, frame):
sys.exit(1)
def main():
opts = parse_options(sys.argv[1:])
setup_logger()
@ -49,6 +53,8 @@ def main():
logger.info("Starting SUbiquity v{}".format(VERSION))
logger.info("Arguments passed: {}".format(sys.argv))
signal.signal(signal.SIGINT, control_c_handler)
ui = SubiquityUI()
subiquity_interface = Subiquity(ui, opts)