From bee3e28ff5ba89d5ba62addecf5ba062bcd40aa1 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Wed, 29 Jan 2025 12:56:32 +0100 Subject: [PATCH] Config: Accept strings as value for glob_paths Make Config's ctor accept strings as values for glob_paths, as opposed to lists. This covers the canonical case of one configuration file being passed. Signed-off-by: Jan Lindemann --- tools/python/jwutils/Config.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/python/jwutils/Config.py b/tools/python/jwutils/Config.py index bbc2748..1e8d0cb 100644 --- a/tools/python/jwutils/Config.py +++ b/tools/python/jwutils/Config.py @@ -28,6 +28,8 @@ class Config(): # export exe = Path(os.path.basename(sys.argv[0])).stem if glob_paths is None: glob_paths = [f'.{exe}', f'{exe}.conf'] + elif isinstance(glob_paths, str): + glob_paths = [glob_paths] if search_dirs is None: env_key = re.sub('[-.]', '_', exe) search_dirs = os.getenv(env_key) @@ -36,7 +38,7 @@ class Config(): # export if dirs is None: dirs = [''] if __is_abs(path) else [ str(Path.home()), str(Path.cwd()) ] for d in dirs: - g = d + '/' + path + g = d + '/' + path if len(d) else path slog(DEBUG, 'Looking for config "{}"'.format(g)) for f in glob.glob(g): slog(DEBUG, 'Reading config "{}"'.format(f))