aboutsummaryrefslogtreecommitdiff
path: root/robher-aosp.yaml
blob: 43808ff2395e87dd5f7d262d4bd052b6e813a05d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
- job:
    name: robher-aosp
    project-type: freestyle
    defaults: global
    logrotate:
        daysToKeep: 60
        numToKeep: 60
    properties:
        - authorization:
            anonymous:
                - job-read
            vishal.bhoj@linaro.org:
                - job-build
                - job-read
                - job-extended-read
                - job-configure
                - job-cancel
            rob.herring@linaro.org:
                - job-build
                - job-read
                - job-extended-read
                - job-configure
                - job-cancel
    disabled: false
    node: docker-xenial-aosp
    display-name: 'AOSP build playground for Rob Herring'
    triggers:
        - timed: 'H H * * *'
    concurrent: true
    wrappers:
        - timestamps
        - timeout:
            timeout: 500
    builders:
        - linaro-publish-token:
            host: snapshots.linaro.org
        - shell:
            !include-raw: android-lcr/common/builders.sh
        - shell: |
            #!/bin/bash

            set -ex

            # Clean any artifacts related to previous build
            rm -rf out/target/product/*/system/ out/target/product/*/data/ out/target/product/*/*.xml out/target/product/*/obj/kernel/
            rm -rf out/target/product/*/*.zip out/target/product/*/*.img out/target/product/*/*.xz
            rm -rf external/mesa3d/

            # Runs as ubuntu
            repo init -u https://android.googlesource.com/platform/manifest -b master
            cd .repo
            rm -rf local_manifests
            git clone https://github.com/robherring/android_manifest -b mesa-master-test local_manifests
            cd ..
            repo sync -f --force-sync -j"$(nproc)"

            mkdir -p out
            cp .repo/manifest.xml out/source-manifest.xml
            repo manifest -r -o out/pinned-manifest.xml

            cd external/mesa3d
            rev=$(git rev-parse freedesktop/master)

            # temporary until upstream can build
            #git reset --hard ${rev}
            git pull --no-edit https://github.com/robherring/mesa.git android-build-test

            # Enable gpu drivers
            sed -i -e 's/\(^MESA_GPU_DRIVERS.*\)/MESA_GPU_DRIVERS := $(strip $(BOARD_GPU_DRIVERS)) i915 i965 r300g nouveau swrast vc4/' Android.mk
            # Commit it so repo will throw it away
            git commit -m "Android: enable GPU drivers" -a -s

            cd ../..

            source build/envsetup.sh
            for arch in arm64 x86_64; do
                    lunch linaro_${arch}-userdebug
                    make -k -j"$(nproc)" gallium_dri i915_dri i965_dri libGLES_mesa || { true; failed=1; }
            done

            ###### Don't care about artifacts for now ######
            echo "Build for mesa rev ${rev} finished - ret ${failed}"
            exit ${failed}

    publishers:
        - logparser:
            parse-rules: '/var/lib/jenkins/userContent/android.parse'
            unstable-on-warning: false
            fail-on-error: false
        - email:
            recipients: 'rob.herring@linaro.org vishal.bhoj@linaro.org'
        - email-ext:
            recipients: 'rob.herring@linaro.org'
            content-type: text
            subject: 'errors for mesa master Android build ${BUILD_NUMBER}'
            body: |
                Build URL: ${PROJECT_URL}${BUILD_NUMBER}/
                Full log: ${PROJECT_URL}${BUILD_NUMBER}/consoleText
                Parsed warnings/errors: ${PROJECT_URL}${BUILD_NUMBER}/parsed_console

                ERRORS:
                ${BUILD_LOG_REGEX, regex="^.*? error: .*?$", linesBefore=0, linesAfter=2, showTruncatedLines=false}
            unstable: true