Ver Fonte

validate: add support for both jsonschema v3 and old v2

RHEL8 and RHEL7 have old jsonschema v2. Try v3 (Draft7) first but
fallback to v2 (Draft4) if needed.
Kim B. Heino há 3 anos atrás
pai
commit
717cfd2d37
1 ficheiros alterados com 4 adições e 1 exclusões
  1. 4 1
      borgmatic/config/validate.py

+ 4 - 1
borgmatic/config/validate.py

@@ -110,7 +110,10 @@ def parse_configuration(config_filename, schema_filename, overrides=None):
     override.apply_overrides(config, overrides)
     normalize.normalize(config)
 
-    validator = jsonschema.Draft7Validator(schema)
+    try:
+        validator = jsonschema.Draft7Validator(schema)
+    except AttributeError:
+        validator = jsonschema.Draft4Validator(schema)
     validation_errors = tuple(validator.iter_errors(config))
 
     if validation_errors: