From b70ea87db7a1e823e261a1d57c30ae42143f0457 Mon Sep 17 00:00:00 2001 From: "W. Harrison Wright" Date: Thu, 27 Dec 2018 12:53:21 -0600 Subject: [PATCH] Fix accidental system exit with better logging strategy --- bin/github-backup | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/bin/github-backup b/bin/github-backup index 0996092..097ba1c 100755 --- a/bin/github-backup +++ b/bin/github-backup @@ -40,16 +40,17 @@ FNULL = open(os.devnull, 'w') def log_error(message): - if type(message) == str: - message = [message] - - for msg in message: - sys.stderr.write("{0}\n".format(msg)) - + """ + Log message (str) or messages (List[str]) to stderr and exit with status 1 + """ + log_warning(message) sys.exit(1) def log_info(message): + """ + Log message (str) or messages (List[str]) to stdout + """ if type(message) == str: message = [message] @@ -57,6 +58,17 @@ def log_info(message): sys.stdout.write("{0}\n".format(msg)) +def log_warning(message): + """ + Log message (str) or messages (List[str]) to stderr + """ + if type(message) == str: + message = [message] + + for msg in message: + sys.stderr.write("{0}\n".format(msg)) + + def logging_subprocess(popenargs, logger, stdout_log_level=logging.DEBUG, @@ -525,7 +537,7 @@ def retrieve_repositories(args, authenticated_user): get_github_api_host(args)) else: if args.private: - log_error('Authenticated user is different from user being backed up, thus private repositories cannot be accessed') + log_warning('Authenticated user is different from user being backed up, thus private repositories cannot be accessed') template = 'https://{0}/users/{1}/repos'.format( get_github_api_host(args), args.user)