if opt: mainOptsSet += 1 if not mainOptsSet: HHelp.usage("You must choose one of 'filter', 'report' or 'cli'") if mainOptsSet > 1: HHelp.usage("You may choose only one of 'filter', 'report' or 'cli'") # handle configuration file processing hc = HConfig.CheckHostsConfig(configfile) hc.parseConfFile() configInfoFromFiles = hc.conf.options # merge in any config options we got from the command line for t in list(set(configInfoFromFiles.keys() + configInfo.keys())): if t in configInfo: configInfo[t] = HOptions.mergeDefaults(configInfoFromFiles[t], configInfo[t]) else: configInfo[t] = HOptions.mergeDefaults(configInfoFromFiles[t], None) if timeout is None: if hc.conf.has_option('globals', 'timeout'): timeout = hc.conf.get('globals', 'timeout') if verbose: print "running with configuration:" print configInfo # list of hosts in sources if filterExpr: hf = HFilter.HostFilter(configInfo, hostExprs, timeout, verbose) hf.processFilterArg(filterExpr)