mirror of
https://github.com/valitydev/salt.git
synced 2024-11-08 01:18:58 +00:00
Merge pull request #31336 from terminalmage/config-validation-logging
Improve config validation logging
This commit is contained in:
commit
7d01979898
@ -730,22 +730,40 @@ def _validate_opts(opts):
|
|||||||
if isinstance(val, VALID_OPTS[key]):
|
if isinstance(val, VALID_OPTS[key]):
|
||||||
continue
|
continue
|
||||||
else:
|
else:
|
||||||
errors.append(err.format(key, val, type(val), 'list'))
|
errors.append(
|
||||||
|
err.format(key, val, type(val).__name__, 'list')
|
||||||
|
)
|
||||||
if isinstance(VALID_OPTS[key](), dict):
|
if isinstance(VALID_OPTS[key](), dict):
|
||||||
if isinstance(val, VALID_OPTS[key]):
|
if isinstance(val, VALID_OPTS[key]):
|
||||||
continue
|
continue
|
||||||
else:
|
else:
|
||||||
errors.append(err.format(key, val, type(val), 'dict'))
|
errors.append(
|
||||||
|
err.format(key, val, type(val).__name__, 'dict')
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
VALID_OPTS[key](val)
|
VALID_OPTS[key](val)
|
||||||
|
if isinstance(val, (list, dict)):
|
||||||
|
# We'll only get here if VALID_OPTS[key] is str or
|
||||||
|
# bool, and the passed value is a list/dict. Attempting
|
||||||
|
# to run int() or float() on a list/dict will raise an
|
||||||
|
# exception, but running str() or bool() on it will
|
||||||
|
# pass despite not being the correct type.
|
||||||
|
errors.append(
|
||||||
|
err.format(
|
||||||
|
key,
|
||||||
|
val,
|
||||||
|
type(val).__name__,
|
||||||
|
VALID_OPTS[key].__name__
|
||||||
|
)
|
||||||
|
)
|
||||||
except ValueError:
|
except ValueError:
|
||||||
errors.append(
|
errors.append(
|
||||||
err.format(key, val, type(val), VALID_OPTS[key])
|
err.format(key, val, type(val).__name__, VALID_OPTS[key])
|
||||||
)
|
)
|
||||||
except TypeError:
|
except TypeError:
|
||||||
errors.append(
|
errors.append(
|
||||||
err.format(key, val, type(val), VALID_OPTS[key])
|
err.format(key, val, type(val).__name__, VALID_OPTS[key])
|
||||||
)
|
)
|
||||||
|
|
||||||
for error in errors:
|
for error in errors:
|
||||||
|
Loading…
Reference in New Issue
Block a user