def validate_config(user_config: dict) -> gen.internals.Resolver: """ Converts the user config to to a source and evaluates it versus the targets and source in this module. Also, catches and reformats the validation exception before raising """ sources = [Source(entry), gen.user_arguments_to_source(user_config)] try: return gen.validate_and_raise(sources, [get_target()]) except gen.exceptions.ValidationError as ex: raise launch.util.LauncherError( 'ValidationError', pretty_print_validate_error(ex.errors, ex.unset))
def validate_config(user_arguments): user_arguments = gen.stringify_configuration(user_arguments) user_source = gen.user_arguments_to_source(user_arguments) messages = gen.internals.resolve_configuration([source, user_source], [get_target()]).status_dict if messages['status'] == 'ok': return {} # Re-format to the expected format # TODO(cmaloney): Make the unnecessary final_errors = dict() for name, message_blob in messages['errors'].items(): final_errors[name] = message_blob['message'] return final_errors