Gentoo Archives: gentoo-catalyst

From: Matt Turner <mattst88@g.o>
To: gentoo-catalyst@l.g.o
Cc: Matt Turner <mattst88@g.o>
Subject: [gentoo-catalyst] [PATCH 15/21] catalyst: Verify config options against valid_config_file_values
Date: Wed, 20 May 2020 03:43:13
Message-Id: 20200520034226.2870937-15-mattst88@gentoo.org
In Reply to: [gentoo-catalyst] [PATCH 01/21] targets: Remove copy_{file,symlink,lib} functions by Matt Turner
1 Signed-off-by: Matt Turner <mattst88@g.o>
2 ---
3 catalyst/main.py | 10 ++++++++--
4 1 file changed, 8 insertions(+), 2 deletions(-)
5
6 diff --git a/catalyst/main.py b/catalyst/main.py
7 index 159fe454..543895c6 100644
8 --- a/catalyst/main.py
9 +++ b/catalyst/main.py
10 @@ -15,7 +15,8 @@ from DeComp.contents import ContentsMap
11
12 from catalyst import log
13 import catalyst.config
14 -from catalyst.defaults import confdefaults, option_messages, DEFAULT_CONFIG_FILE
15 +from catalyst.defaults import (confdefaults, option_messages,
16 + DEFAULT_CONFIG_FILE, valid_config_file_values)
17 from catalyst.support import CatalystError
18 from catalyst.version import get_version
19
20 @@ -34,7 +35,12 @@ def parse_config(config_files):
21 for config_file in config_files:
22 log.notice('Loading configuration file: %s', config_file)
23 try:
24 - conf_values.update(toml.load(config_file))
25 + config = toml.load(config_file)
26 + for key in config:
27 + if key not in valid_config_file_values:
28 + log.critical("Unknown option '%s' in config file %s",
29 + key, config_file)
30 + conf_values.update(config)
31 except Exception as e:
32 log.critical('Could not find parse configuration file: %s: %s',
33 config_file, e)
34 --
35 2.26.2