diff --git a/src/caosdb/configuration.py b/src/caosdb/configuration.py index 80422433e80f26d305cf1558155d0c140b773c02..e35c08dac69916cec5b714a56351a9330bf58093 100644 --- a/src/caosdb/configuration.py +++ b/src/caosdb/configuration.py @@ -24,7 +24,11 @@ import os import yaml -from jsonschema import validate +try: + optional_jsonschema = None + from jsonschema import validate as optional_jsonschema_validate +except ImportError: + pass try: # python2 @@ -79,9 +83,10 @@ def config_to_yaml(config): def validate_yaml_schema(valobj): - 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["schema-pycaosdb-ini"]) + if optional_jsonschema_validate: + with open(os.path.join(os.path.dirname(__file__), "schema-pycaosdb-ini.yml")) as f: + schema = yaml.load(f, Loader=yaml.SafeLoader) + optional_jsonschema_validate(instance=valobj, schema=schema["schema-pycaosdb-ini"]) def _read_config_files():