From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 8D73313888F for ; Fri, 9 Oct 2015 05:57:40 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id AA9DDE0845; Fri, 9 Oct 2015 05:57:36 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id CF894E0839 for ; Fri, 9 Oct 2015 05:57:34 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by smtp.gentoo.org (Postfix) with ESMTP id D94A73406F0 for ; Fri, 9 Oct 2015 05:57:32 +0000 (UTC) From: Mike Frysinger To: gentoo-catalyst@lists.gentoo.org Subject: [gentoo-catalyst] [PATCH 3/3] main: convert to new logging module Date: Fri, 9 Oct 2015 01:57:28 -0400 Message-Id: <1444370248-13159-3-git-send-email-vapier@gentoo.org> X-Mailer: git-send-email 2.5.2 In-Reply-To: <1444370248-13159-1-git-send-email-vapier@gentoo.org> References: <1444370248-13159-1-git-send-email-vapier@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-catalyst@lists.gentoo.org Reply-to: gentoo-catalyst@lists.gentoo.org X-Archives-Salt: d1957f7b-f59e-4b46-bdad-403864210a6a X-Archives-Hash: 4baa9d59ab0a000196ce2d90e203bd78 --- catalyst/main.py | 104 +++++++++++++++++++++++-------------------------------- 1 file changed, 43 insertions(+), 61 deletions(-) diff --git a/catalyst/main.py b/catalyst/main.py index c9a2219..bc77c59 100644 --- a/catalyst/main.py +++ b/catalyst/main.py @@ -7,6 +7,7 @@ # $Id$ import argparse +import datetime import os import sys @@ -31,36 +32,36 @@ conf_values={} def version(): - print get_version() - print "Copyright 2003-2008 Gentoo Foundation" - print "Copyright 2008-2012 various authors" - print "Distributed under the GNU General Public License version 2.1\n" + log.info(get_version()) + log.info('Copyright 2003-%s Gentoo Foundation', datetime.datetime.now().year) + log.info('Copyright 2008-2012 various authors') + log.info('Distributed under the GNU General Public License version 2.1') def parse_config(myconfig): # search a couple of different areas for the main config file myconf={} config_file="" + default_config_file = '/etc/catalyst/catalyst.conf' # first, try the one passed (presumably from the cmdline) if myconfig: if os.path.exists(myconfig): - print "Using command line specified Catalyst configuration file, "+myconfig + log.notice('Using command line specified Catalyst configuration file: %s', + myconfig) config_file=myconfig else: - print "!!! catalyst: Could not use specified configuration file "+\ - myconfig - sys.exit(1) + log.critical('Specified configuration file does not exist: %s', myconfig) # next, try the default location - elif os.path.exists("/etc/catalyst/catalyst.conf"): - print "Using default Catalyst configuration file, /etc/catalyst/catalyst.conf" - config_file="/etc/catalyst/catalyst.conf" + elif os.path.exists(default_config_file): + log.notice('Using default Catalyst configuration file: %s', + default_config_file) + config_file = default_config_file # can't find a config file (we are screwed), so bail out else: - print "!!! catalyst: Could not find a suitable configuration file" - sys.exit(1) + log.critical('Could not find a suitable configuration file') # now, try and parse the config file "config_file" try: @@ -69,8 +70,7 @@ def parse_config(myconfig): myconf.update(myconfig.get_values()) except Exception: - print "!!! catalyst: Unable to parse configuration file, "+myconfig - sys.exit(1) + log.critical('Could not find parse configuration file: %s', myconfig) # now, load up the values into conf_values so that we can use them for x in list(confdefaults): @@ -90,7 +90,7 @@ def parse_config(myconfig): # print out any options messages for opt in conf_values['options']: if opt in option_messages: - print option_messages[opt] + log.info(option_messages[opt]) for key in ["digests", "envscript", "var_tmpfs_portage", "port_logdir", "local_overlay"]: @@ -102,7 +102,7 @@ def parse_config(myconfig): conf_values["contents"] = myconf["contents"].replace("-", '_') if "envscript" in myconf: - print "Envscript support enabled." + log.info('Envscript support enabled.') # take care of any variable substitutions that may be left for x in list(conf_values): @@ -118,11 +118,8 @@ def import_module(target): try: mod_name = "catalyst.targets." + target module = __import__(mod_name, [],[], ["not empty"]) - except ImportError as e: - print "!!! catalyst: Python module import error: %s " % target + \ - "in catalyst/targets/ ... exiting." - print "ERROR was: ", e - sys.exit(1) + except ImportError: + log.critical('Python module import error: %s', target, exc_info=True) return module @@ -278,7 +275,7 @@ def main(): parse_config(myconfig) conf_values["options"].update(options) - #print "MAIN: conf_values['options'] =", conf_values["options"] + log.debug('conf_values[options] = %s', conf_values['options']) # initialize our contents generator contents_map = ContentsMap(CONTENTS_DEFINITIONS) @@ -308,14 +305,13 @@ def main(): # First validate all the requested digests are valid keys. if digests - valid_digests: - print - print "These are not a valid digest entries:" - print ', '.join(digests - valid_digests) - print "Valid digest entries:" - print ', '.join(sorted(valid_digests)) - print - print "Catalyst aborting...." - sys.exit(2) + log.critical( + 'These are not valid digest entries:\n' + '%s\n' + 'Valid digest entries:\n' + '%s', + ', '.join(digests - valid_digests), + ', '.join(sorted(valid_digests))) # Then check for any programs that the hash func requires. for digest in digests: @@ -326,37 +322,28 @@ def main(): if skip_missing: digests.remove(digest) continue - print - print "digest=" + digest - print "\tThe " + hash_map.hash_map[digest].cmd + \ - " binary was not found. It needs to be in your system path" - print - print "Catalyst aborting...." - sys.exit(2) + log.critical( + 'The "%s" binary needed by digest "%s" was not found. ' + 'It needs to be in your system path.', + hash_map.hash_map[digest].cmd, digest) # Now reload the config with our updated value. conf_values['digests'] = ' '.join(digests) if "hash_function" in conf_values: if conf_values["hash_function"] not in HASH_DEFINITIONS: - print - print conf_values["hash_function"]+\ - " is not a valid hash_function entry" - print "Valid hash_function entries:" - print HASH_DEFINITIONS.keys() - print - print "Catalyst aborting...." - sys.exit(2) + log.critical( + '%s is not a valid hash_function entry\n' + 'Valid hash_function entries:\n' + '%s', HASH_DEFINITIONS.keys()) try: process.find_binary(hash_map.hash_map[conf_values["hash_function"]].cmd) except process.CommandNotFound: - print - print "hash_function="+conf_values["hash_function"] - print "\tThe "+hash_map.hash_map[conf_values["hash_function"]].cmd + \ - " binary was not found. It needs to be in your system path" - print - print "Catalyst aborting...." - sys.exit(2) + log.critical( + 'The "%s" binary needed by hash_function "%s" was not found. ' + 'It needs to be in your system path.', + hash_map.hash_map[conf_values['hash_function']].cmd, + conf_values['hash_function']) addlargs={} @@ -370,25 +357,20 @@ def main(): cmdline.parse_lines(mycmdline) addlargs.update(cmdline.get_values()) except CatalystError: - print "!!! catalyst: Could not parse commandline, exiting." - sys.exit(1) + log.critical('Could not parse commandline') if "target" not in addlargs: raise CatalystError("Required value \"target\" not specified.") if os.getuid() != 0: # catalyst cannot be run as a normal user due to chroots, mounts, etc - print "!!! catalyst: This script requires root privileges to operate" - sys.exit(2) + log.critical('This script requires root privileges to operate') # everything is setup, so the build is a go try: success = build_target(addlargs) except KeyboardInterrupt: - print "\nCatalyst build aborted due to user interrupt ( Ctrl-C )" - print - print "Catalyst aborting...." - sys.exit(2) + log.critical('Catalyst build aborted due to user interrupt (Ctrl-C)') if not success: sys.exit(2) sys.exit(0) -- 2.5.2