aboutsummaryrefslogtreecommitdiff
path: root/odp-publish.yaml
blob: d1b34a3481f74b56b425aa9d56a6a517869d81d8 (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
- job:
    name: odp-publish
    project-type: matrix
    defaults: global
    logrotate:
        daysToKeep: 30
        numToKeep: 30
    properties:
        - authorization:
            anonymous:
                - job-read
                - job-extended-read
            linaro:
                - job-read
                - job-extended-read
                - job-build
                - job-cancel
    disabled: false
    node: master
    child-workspace: .
    display-name: 'ODP publish'
    triggers:
        - timed: '@daily'
    axes:
        - axis:
            type: user-defined
            name: build_type
            values:
                - lcov
                - dox_html
                - clang
        - axis:
            type: user-defined
            name: platform_type
            values:
                - generic
                - netmap
                - dpdk
#                - ks2
        - axis:
            type: user-defined
            name: GIT_BRANCH
            values:
                - master
                - api-next
        - axis:
            type: slave
            name: label
            values:
                - docker-utopic
    execution-strategy:
        combination-filter: |
            !(GIT_BRANCH=="api-next" && (platform_type=="netmap" || platform_type=="dpdk" || platform_type=="ks2"))
    wrappers:
        - timestamps
        - matrix-tie-parent:
            node: master
    builders:
        - shell: |
            #!/bin/bash
            # Assume build-dependencies packages are installed
            # build-essential git autoconf automake libtool doxygen libssl-dev

            set -ex

            rm -rf check-odp
            git clone --depth 1 git://git.linaro.org/lng/check-odp.git

            sudo sed -i -e 's/archive.ubuntu.com\|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
            sudo apt-get update
            sudo apt-get install -y --no-install-recommends libssl-dev

            case "${platform_type}" in
              dpdk)
                sudo apt-get install -y linux-headers-generic libpcap-dev
                mkdir -p ${HOME}/bin
                cp check-odp/helper/ci-uname ${HOME}/bin/uname
                export PATH=${HOME}/bin:${PATH}
                ;;
              ks2)
                export tcbindir="${HOME}/srv/toolchain/arm-tc-14.09/bin"
                ;;
            esac

            case "${build_type}" in
              lcov)
                sudo apt-get install -y --no-install-recommends lcov
                export LCOV=1
                export SUDO=1
                ;;
              dox_html)
                sudo apt-get install -y --no-install-recommends graphviz doxygen
                export DOXYGEN_HTML=1
                ;;
              clang)
                sudo apt-get install -y --no-install-recommends clang
                export CLANG=1
                ;;
            esac

            bash -x ${WORKSPACE}/check-odp/build-${platform_type}.sh
        - ssh:
            site: 'docs.opendataplane.org'
            target: ''
            source: 'check-odp/publishing/**'
            timeout: 120000
            remove-prefix: 'check-odp/publishing'
            always-publish-from-master: true
    publishers:
        - warnings:
            console-log-parsers:
              - 'Clang (LLVM based)'
              - 'Doxygen'
        - email:
            recipients: 'lng-ci@lists.linaro.org'