def read(self, filename): basename = ConfigReader.BASE_DIRECTORY + filename logSys.debug("Reading " + basename) bConf = basename + ".conf" bLocal = basename + ".local" if os.path.exists(bConf) or os.path.exists(bLocal): SafeConfigParserWithIncludes.read(self, [bConf, bLocal]) return True else: logSys.error(bConf + " and " + bLocal + " do not exist") return False
def read(self, filename): if not os.path.exists(self._basedir): raise ValueError("Base configuration directory %s does not exist " % self._basedir) basename = os.path.join(self._basedir, filename) logSys.debug("Reading configs for %s under %s " % (basename, self._basedir)) config_files = [ basename + ".conf", basename + ".local" ] # choose only existing ones config_files = filter(os.path.exists, config_files) # possible further customizations under a .conf.d directory config_dir = basename + '.d' config_files += sorted(glob.glob('%s/*.conf' % config_dir)) if len(config_files): # at least one config exists and accessible logSys.debug("Reading config files: " + ', '.join(config_files)) config_files_read = SafeConfigParserWithIncludes.read(self, config_files) missed = [ cf for cf in config_files if cf not in config_files_read ] if missed: logSys.error("Could not read config files: " + ', '.join(missed)) if config_files_read: return True logSys.error("Found no accessible config files for %r under %s" % ( filename, self.getBaseDir() )) return False else: logSys.error("Found no accessible config files for %r " % filename + (["under %s" % self.getBaseDir(), "among existing ones: " + ', '.join(config_files)][bool(len(config_files))])) return False
def read(self, filename): if not (os.path.exists(self._basedir) and os.access(self._basedir, os.R_OK | os.X_OK)): raise ValueError( "Base configuration directory %s either does not exist " "or is not accessible" % self._basedir ) basename = os.path.join(self._basedir, filename) logSys.debug("Reading configs for %s under %s " % (basename, self._basedir)) config_files = [basename + ".conf", basename + ".local"] # choose only existing ones config_files = filter(os.path.exists, config_files) # possible further customizations under a .conf.d directory config_dir = basename + ".d" if os.path.exists(config_dir): if os.path.isdir(config_dir) and os.access(config_dir, os.X_OK | os.R_OK): # files must carry .conf suffix as well config_files += sorted(glob.glob("%s/*.conf" % config_dir)) else: logSys.warn("%s exists but not a directory or not accessible" % config_dir) # check if files are accessible, warn if any is not accessible # and remove it from the list config_files_accessible = [] for f in config_files: if os.access(f, os.R_OK): config_files_accessible.append(f) else: logSys.warn("%s exists but not accessible - skipping" % f) if len(config_files_accessible): # at least one config exists and accessible SafeConfigParserWithIncludes.read(self, config_files_accessible) return True else: logSys.error( "Found no accessible config files for %r " % filename + ( ["under %s" % self.getBaseDir(), "among existing ones: " + ", ".join(config_files)][ bool(len(config_files)) ] ) ) return False
def read(self, filename): if not os.path.exists(self._basedir): raise ValueError( "Base configuration directory %s does not exist " % self._basedir) basename = os.path.join(self._basedir, filename) logSys.debug("Reading configs for %s under %s " % (basename, self._basedir)) config_files = [basename + ".conf"] # possible further customizations under a .conf.d directory config_dir = basename + '.d' config_files += sorted(glob.glob('%s/*.conf' % config_dir)) config_files.append(basename + ".local") config_files += sorted(glob.glob('%s/*.local' % config_dir)) # choose only existing ones config_files = filter(os.path.exists, config_files) if len(config_files): # at least one config exists and accessible logSys.debug("Reading config files: " + ', '.join(config_files)) config_files_read = SafeConfigParserWithIncludes.read( self, config_files) missed = [cf for cf in config_files if cf not in config_files_read] if missed: logSys.error("Could not read config files: " + ', '.join(missed)) if config_files_read: return True logSys.error("Found no accessible config files for %r under %s" % (filename, self.getBaseDir())) return False else: logSys.error( "Found no accessible config files for %r " % filename + ([ "under %s" % self.getBaseDir(), "among existing ones: " + ', '.join(config_files) ][bool(len(config_files))])) return False
def __init__(self): SafeConfigParserWithIncludes.__init__(self) self.__opts = None
def __init__(self, basedir=None): SafeConfigParserWithIncludes.__init__(self) self.setBaseDir(basedir) self.__opts = None
def __init__(self): SafeConfigParserWithIncludes.__init__(self, {'configpath' : \ ConfigReader.BASE_DIRECTORY} ) self.__opts = None