Beispiel #1
0
def get_lint_failures(push, parent_push=None):
    lint_results = Job.objects.filter(
        Q(machine_platform__platform='lint') | Q(job_type__symbol='mozlint'),
        push=push,
        tier__lte=2,
    ).select_related('machine_platform', 'taskcluster_metadata')

    result, failures = get_job_results(lint_results, 'testfailed')

    if parent_push:
        mark_failed_in_parent(failures, get_lint_failures(parent_push)[1])

    return (result, failures)
Beispiel #2
0
def get_build_failures(push, parent_push=None):
    build_failures = Job.objects.filter(
        push=push,
        tier__lte=2,
        result='busted',
    ).select_related('machine_platform', 'taskcluster_metadata')

    failures = [job_to_dict(job) for job in build_failures]

    if parent_push:
        mark_failed_in_parent(failures, get_build_failures(parent_push))

    return failures
Beispiel #3
0
def get_lint_failures(push, parent_push=None):
    lint_failures = Job.objects.filter(
        Q(machine_platform__platform='lint') | Q(job_type__symbol='mozlint'),
        push=push,
        tier__lte=2,
        result='testfailed',
    ).select_related('machine_platform', 'taskcluster_metadata')

    failures = [job_to_dict(job) for job in lint_failures]

    if parent_push:
        mark_failed_in_parent(failures, get_lint_failures(parent_push))

    return failures
Beispiel #4
0
def get_build_failures(push, parent_push=None):
    # icontains doesn't work with mysql unless collation settings are adjusted: https://code.djangoproject.com/ticket/9682
    build_types = JobType.objects.filter(
        Q(name__contains='Build') | Q(name__contains='build'))

    build_results = Job.objects.filter(
        push=push,
        tier__lte=2,
        job_type__in=build_types,
    ).select_related('machine_platform', 'taskcluster_metadata')

    result, failures = get_job_results(build_results, 'busted')

    if parent_push:
        mark_failed_in_parent(failures, get_build_failures(parent_push)[1])

    return (result, failures)