From 0ffeafe649dc02617ffce7de7086e3fac35a97ee Mon Sep 17 00:00:00 2001 From: Michael E Brown Date: Wed, 28 Nov 2007 10:07:47 -0600 Subject: better end-user error messages for messed up config files --- src/mock.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/mock.py b/src/mock.py index bee4d11..0110b3a 100755 --- a/src/mock.py +++ b/src/mock.py @@ -275,6 +275,7 @@ def main(retParams): config_opts['chroot_name'] = options.chroot log_ini = os.path.join(config_path, config_opts["log_config_file"]) try: + if not os.path.exists(log_ini): raise IOError, "Could not find log config file %s" % log_ini log_cfg = ConfigParser.ConfigParser() logging.config.fileConfig(log_ini) log_cfg.read(log_ini) @@ -282,10 +283,14 @@ def main(retParams): log.error("Could not find required logging config file: %s" % log_ini) sys.exit(50) - # set up logging format strings - config_opts['build_log_fmt_str'] = log_cfg.get("formatter_%s" % config_opts['build_log_fmt_name'], "format", raw=1) - config_opts['root_log_fmt_str'] = log_cfg.get("formatter_%s" % config_opts['root_log_fmt_name'], "format", raw=1) - config_opts['state_log_fmt_str'] = log_cfg.get("formatter_%s" % config_opts['state_log_fmt_name'], "format", raw=1) + try: + # set up logging format strings + config_opts['build_log_fmt_str'] = log_cfg.get("formatter_%s" % config_opts['build_log_fmt_name'], "format", raw=1) + config_opts['root_log_fmt_str'] = log_cfg.get("formatter_%s" % config_opts['root_log_fmt_name'], "format", raw=1) + config_opts['state_log_fmt_str'] = log_cfg.get("formatter_%s" % config_opts['state_log_fmt_name'], "format", raw=1) + except ConfigParser.NoSectionError, e: + log.error("Log config file (%s) missing required section: %s" % (log_ini, e)) + sys.exit(50) # cmdline options override config options log.info("mock.py version %s starting..." % __VERSION__) -- cgit