Exemplo n.º 1
0
def get_stored_targets(base_dir, log_filename_format=None):
    """Get parsed stored targets."""
    assert log_filename_format
    if '{job.state}' in log_filename_format:
        log_filename_format = log_filename_format.replace(
            '{job.state}', '{job.state:w}')

    if '{job.number}' in log_filename_format:
        log_filename_format = log_filename_format.replace(
            '{job.number}', '{job.number:f}')

    parser = parse.compile(log_filename_format)

    if base_dir[-1] != '/':
        base_dir = base_dir + '/'

    filenames = get_files(base_dir)

    targets = []
    for filename in filenames:
        parsed_filename = parser.parse(filename)
        if not parsed_filename:
            __logs__.warning('Unexpected filename {0}'.format(filename))
            continue
        target = Target()
        try:
            target.slug = parsed_filename['job.repository.slug']
        except KeyError:
            pass
        try:
            target.number = str(parsed_filename['job.number'])
        except KeyError:
            pass
        try:
            target.state = parsed_filename['job.state']
        except KeyError:
            pass

        targets.append(target)

    return targets
Exemplo n.º 2
0
def get_stored_targets(base_dir, log_filename_format=None):
    """Get parsed stored targets."""
    assert log_filename_format
    if '{job.state}' in log_filename_format:
        log_filename_format = log_filename_format.replace(
            '{job.state}', '{job.state:w}')

    if '{job.number}' in log_filename_format:
        log_filename_format = log_filename_format.replace(
            '{job.number}', '{job.number:f}')

    parser = parse.compile(log_filename_format)

    if base_dir[-1] != '/':
        base_dir = base_dir + '/'

    filenames = get_files(base_dir)

    targets = []
    for filename in filenames:
        parsed_filename = parser.parse(filename)
        if not parsed_filename:
            __logs__.warning('Unexpected filename {0}'.format(filename))
            continue
        target = Target()
        try:
            target.slug = parsed_filename['job.repository.slug']
        except KeyError:
            pass
        try:
            target.number = str(parsed_filename['job.number'])
        except KeyError:
            pass
        try:
            target.state = parsed_filename['job.state']
        except KeyError:
            pass

        targets.append(target)

    return targets