commit: 2751ef36ebb4d2d81a847e43578292794e16da19 Author: Matt Turner <mattst88 <AT> gentoo <DOT> org> AuthorDate: Tue May 19 00:13:14 2020 +0000 Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org> CommitDate: Tue May 19 23:45:26 2020 +0000 URL: https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=2751ef36
catalyst: Verify config options against valid_config_file_values Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org> catalyst/main.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/catalyst/main.py b/catalyst/main.py index 159fe454..543895c6 100644 --- a/catalyst/main.py +++ b/catalyst/main.py @@ -15,7 +15,8 @@ from DeComp.contents import ContentsMap from catalyst import log import catalyst.config -from catalyst.defaults import confdefaults, option_messages, DEFAULT_CONFIG_FILE +from catalyst.defaults import (confdefaults, option_messages, + DEFAULT_CONFIG_FILE, valid_config_file_values) from catalyst.support import CatalystError from catalyst.version import get_version @@ -34,7 +35,12 @@ def parse_config(config_files): for config_file in config_files: log.notice('Loading configuration file: %s', config_file) try: - conf_values.update(toml.load(config_file)) + config = toml.load(config_file) + for key in config: + if key not in valid_config_file_values: + log.critical("Unknown option '%s' in config file %s", + key, config_file) + conf_values.update(config) except Exception as e: log.critical('Could not find parse configuration file: %s: %s', config_file, e)