From f5549dcb1196a5bb13dd97b1bdd11bf874fa770f Mon Sep 17 00:00:00 2001 From: Arthur Le Bars <arthur.le-bars@sb-roscoff.fr> Date: Mon, 24 May 2021 16:38:00 +0200 Subject: [PATCH] Throw a critical error while parsing the supplied config file when a parameter is not configured or configured incorrectly (empty value) in the config file --- utilities.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/utilities.py b/utilities.py index bcc79b2..ff24356 100755 --- a/utilities.py +++ b/utilities.py @@ -37,12 +37,17 @@ def parse_config(config_file): config_dict = load_yaml(config_file) if not isinstance(config_dict, dict): - logging.critical("Config yaml file is not a dictionary" % config_file) + logging.critical("Config yaml file is not a dictionary (%s)" % config_file) sys.exit() else: - #logging.debug("Config dictionary: {0}".format(config_dict)) - #required_param = [constants.] - #check_not_empty_param() + required_parameters = [constants.CONF_ALL_HOSTNAME, constants.CONF_ALL_HTTP_PORT, constants.CONF_GALAXY_DEFAULT_ADMIN_EMAIL, + constants.CONF_GALAXY_DEFAULT_ADMIN_USER, constants.CONF_GALAXY_DEFAULT_ADMIN_PASSWORD, constants.CONF_TRIPAL_PASSWORD, + constants.CONF_GALAXY_CONFIG_REMOTE_USER_MAILDOMAIN] + for required_parameter in required_parameters: + if not config_dict[required_parameter]: + logging.critical("{0} parameter improperly configured in config file {1}".format(required_parameter, config_file)) + sys.exit() + return config_dict def parse_input(input_file): -- GitLab