From 3a5ec117d43e3b387e4dde7010c9b456add9bd76 Mon Sep 17 00:00:00 2001
From: Alexander Schlemmer <alexander@mail-schlemmer.de>
Date: Fri, 15 Jan 2021 16:00:05 +0100
Subject: [PATCH] validation functions added

---
 src/caosdb/configuration.py | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/src/caosdb/configuration.py b/src/caosdb/configuration.py
index 4d079784..27d44617 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)
+    
-- 
GitLab