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.
This commit is contained in:
Kim B. Heino
2021-10-23 15:04:07 +03:00
parent 7881327004
commit 717cfd2d37
+4 -1
View File
@@ -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: