aboutsummaryrefslogtreecommitdiff
path: root/lt-qcom-tracking-tree.yaml
blob: 98453f92d4ce658d49019fd96a3845cd02b9d7d9 (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
- job:
    name: LT-QCOM-tracking-tree
    project-type: freestyle
    defaults: global
    logrotate:
        daysToKeep: 30
        numToKeep: 30
    properties:
        - authorization:
            anonymous:
                - job-read
            linaro-landing-team-qualcomm-personnel:
                - job-read
                - job-extended-read
                - job-build
                - job-cancel
    disabled: false
    node: build
    display-name: 'Qualcomm LT kernel (tracking)'
    scm:
        - git:
            url: http://git.linaro.org/git/landing-teams/working/qualcomm/kernel.git
            refspec: +refs/heads/integration-linux-qcomlt:refs/remotes/origin/integration-linux-qcomlt
            name: origin
            branches:
                - origin/integration-linux-qcomlt
            skip-tag: true
            shallow-clone: true
            wipe-workspace: false
    triggers:
        - pollscm: 'H/5 * * * *'
        - reverse:
            jobs: 'ubuntu-armhf-rootfs'
            result: 'success'
    wrappers:
        - timestamps
        - copy-to-slave:
            includes:
                - gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux.tar.xz
        - build-name:
            name: '#${BUILD_NUMBER}-${GIT_REVISION,length=8}'
    builders:
        - shell: |
            #!/bin/bash

            set -ex

            trap cleanup_exit INT TERM EXIT

            cleanup_exit()
            {
              cd ${WORKSPACE}
              rm -rf lci-build-tools
              rm -rf builddir*
              rm -f builddeb.patch
            }

            # we cannot clean 'out' on exit but on entry instead, since its
            # content is needed for triggers and publishers
            rm -rf out

            export LANG=C
            CCACHE_DIR="$HOME/ccache"
            CCACHE_UNIFY=1
            CCACHE_SLOPPINESS=file_macro,include_file_mtime,time_macros
            export CCACHE_DIR CCACHE_UNIFY CCACHE_SLOPPINESS
            export use_ccache=true
            export make_install=true
            export kernel_flavour="multi-v7"
            export kernel_config="multi_v7_defconfig"
            export toolchain_url="http://releases.linaro.org/14.04/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux.tar.xz"

            test -d lci-build-tools || git clone https://git.linaro.org/git/ci/lci-build-tools.git lci-build-tools
            wget http://people.linaro.org/~nicolas.dechesne/builddeb.patch
            (cd lci-build-tools && patch -p1 < ../builddeb.patch)
            bash lci-build-tools/jenkins_kernel_build_inst

            cp -a *.deb out/

            # IFC6410 needs ATAG fixup to boot
            cp -a fixup.bin out/fixup-qcom-apq8064-ifc6410.bin
            cp -a fixup.bin out/fixup-qcom-apq8064-cm-qs600.bin

            # these variables are required by lt-qcom-ubuntu-images job
            cat << EOF > out/lt-qcom-ubuntu-images_parameters
            KERNEL_BUILD_JENKINS=${BUILD_URL}
            KERNEL_FLAVOUR=${kernel_flavour}
            KERNEL_SERIAL_CONSOLE=ttyMSM0,115200n8
            EOF
    publishers:
        - archive:
            artifacts: 'out/*, out/dtbs/qcom-apq*.dtb'
            latest-only: true
        - trigger-parameterized-builds:
            - project: 'lt-qcom-ubuntu-images-tracking'
              property-file: out/lt-qcom-ubuntu-images_parameters
              condition: SUCCESS
        - email:
            recipients: 'nicolas.dechesne@linaro.org fathi.boudra@linaro.org'
        - ircbot:
            channels:
                - name: '#linaro-lt-qcomm'
                  password: ${LT_QCOM_KEY}