diff --git a/src/caosdb/configuration.py b/src/caosdb/configuration.py index 4d0797844182b8465ef5f97a869e31ee4fcaf47d..27d44617e96688e0363c0fe2c610d30c7e6af9d9 100644 --- a/src/caosdb/configuration.py +++ b/src/caosdb/configuration.py @@ -21,6 +21,10 @@ # # ** end header # + +import os +import yaml + try: # python2 from ConfigParser import ConfigParser @@ -46,6 +50,22 @@ def configure(inifile): _reset_config() return _pycaosdbconf.read(inifile) - def get_config(): return _pycaosdbconf + + +def config_to_yaml(config): + valobj = {} + for s in config.sections(): + valobj[s] = {} + for key, value in config[s].items(): + valobj[s][key] = value + + return valobj + +def validate(valobj): + print(__file__) + with open(os.path.join(os.path.dirname(__file__), "schema-pycaosdb-ini.yml")) as f: + schema = yaml.load(f, Loader=yaml.SafeLoader) + validate(instance=valobj, schema=schema) +