def _verify()

in appengine/runtime_builders/data_integrity.py [0:0]


def _verify(directory, presubmit):
    failures = 0

    try:
        for config_file in glob.glob(os.path.join(directory, '*.yaml')):
            with open(config_file, 'r') as f:
                config = yaml.load(f)
                project_name = config['project']
                latest_file = config.get('latest', '')
                if not latest_file:
                    logging.warn('Project %s has no latest file: skipping',
                                 project_name)
                    continue
                if not presubmit:
                    failures += _verify_latest_files_match(project_name,
                                                           latest_file)
                failures += _verify_latest_file_exists(latest_file)
        return failures
    except ValueError as ve:
        logging.error('Error when parsing YAML! Check file formatting. \n{0}'
                      .format(ve))
    except KeyError as ke:
        logging.error('Config file {0} is missing required field! \n{1}'
                      .format(config_file, ke))