aboutsummaryrefslogtreecommitdiff
path: root/android-master-clang.yaml
blob: 4301203bea5f6999f7a602c162e90c19607de2e9 (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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
- job:
    name: android-master-clang
    project-type: freestyle
    defaults: global
    properties:
        - authorization:
            anonymous:
                - job-read
                - job-extended-read
            linaro:
                - job-build
                - job-cancel
        - build-discarder:
            days-to-keep: 60
            num-to-keep: 60
    disabled: false
    node: docker-utopic-aosp
    display-name: 'AOSP Master built with upstream Clang toolchain'
    wrappers:
        - timestamps
        - timeout:
            timeout: 500
    builders:
        - linaro-publish-token
        - shell: |
            #!/bin/bash

            # Download linaro-cp
            mkdir -p ${HOME}/bin
            wget https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py
            chmod a+x ${HOME}/bin/*
            export PATH=${HOME}/bin:${PATH}

            sudo apt-get update
            sudo apt-get install -y libxml2-dev zlib1g-dev libtinfo-dev git-svn gawk libxml2-utils rsync

            wget -q \
              http://archive.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jre-headless_8u45-b14-1_amd64.deb \
              http://archive.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jre_8u45-b14-1_amd64.deb \
              http://archive.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jdk_8u45-b14-1_amd64.deb \
              https://cmake.org/files/v3.5/cmake-3.5.2-Linux-x86_64.sh
            sudo dpkg -i --force-all *.deb
            rm -f *.deb

            yes y | bash cmake-3.5.2-Linux-x86_64.sh
            export PATH=${PWD}/cmake-3.5.2-Linux-x86_64/bin/:${PATH}

            # Generate fat partition hikey image for LAVA.
            export TARGET_BOOTIMAGE_USE_FAT=true
            mkdir -p /home/buildslave/srv/${JOB_NAME}
            cd /home/buildslave/srv/${JOB_NAME}
            if [ -e aosp_uclang ]; then
              cd aosp_uclang/
              git pull origin master
              cd -
            else
              git clone http://git.linaro.org/git/people/minseong.kim/aosp_uclang.git
            fi
            (cd aosp_uclang && bash aosp-uclang-init-and-build.sh)
            cd /home/buildslave/srv/${JOB_NAME}/aosp_uclang/aosp_master/out/target/product/hikey/
            for image in "boot.img" "boot_fat.uefi.img" "system.img" "userdata.img" "userdata-4gb.img" "cache.img"; do
                echo "Compressing ${image}"
                xz ${image}
            done

            wget -q https://git.linaro.org/ci/job/configs.git/blob_plain/HEAD:/android-lcr/hikey/build-info/aosp-master-template.txt -O BUILD-INFO.txt

            # Publish binaries
            PUB_DEST=/android/$JOB_NAME/$BUILD_NUMBER
            time linaro-cp.py \
              --api_version 3 \
              --manifest \
              --no-build-info \
              --link-latest \
              --split-job-owner \
              ./ \
              ${PUB_DEST} \
              --include "^[^/]+[._](img[^/]*|tar[^/]*|xml|sh|config)$" \
              --include "^[BHi][^/]+txt$" \
              --include "^(MANIFEST|MD5SUMS|changelog.txt)$"

             cat << EOF > ${WORKSPACE}/post_build_lava_parameters
             DEVICE_TYPE=hikey
             TARGET_PRODUCT=hikey
             MAKE_TARGETS=droidcore
             JOB_NAME=${JOB_NAME}
             BUILD_NUMBER=${BUILD_NUMBER}
             IMAGE_EXTENSION=img.xz
             BUILD_URL=${BUILD_URL}
             LAVA_SERVER=validation.linaro.org/RPC2/
             IMAGE_EXTENSION=img.xz
             FRONTEND_JOB_NAME=${JOB_NAME}
             DOWNLOAD_URL=${PUBLISH_SERVER}/${PUB_DEST}
             CUSTOM_JSON_URL=https://git.linaro.org/qa/test-plans.git/blob_plain/HEAD:/android/hikey/template-boot.json
             EOF

             echo "Build finished"
        - trigger-builds:
            - project: 'post-build-lava'
              property-file: post_build_lava_parameters
              block: true
    publishers:
        - email-ext:
            recipients: 'minseong.kim@linaro.org,vishal.bhoj@linaro.org,daniel.diaz@linaro.org'
            content-type: text
            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=0, showTruncatedLines=false}
        - logparser:
            parse-rules: '/var/lib/jenkins/userContent/android.parse'
            unstable-on-warning: false
            fail-on-error: false
        - fingerprint:
            files: 'build/fingerprints/*'