aboutsummaryrefslogtreecommitdiff
path: root/xen-packages.yaml
blob: 4d19f96ec45b25b26a1a20608d58ee1f0177be9f (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
- job:
    name: xen-packages
    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: true
    display-name: 'Linaro Xen binary build'
    axes:
        - axis:
            type: slave
            name: label
            values:
                - docker-jessie-arm64
                - docker-jessie-armhf
    triggers:
        - timed: 'H(0-30) H(9-11) * * *'
    wrappers:
        - timestamps
        - matrix-tie-parent:
            node: master
    builders:
        - linaro-publish-token
        - shell: |
            #!/bin/bash

            set -ex

            sudo apt-get update
            sudo apt-get -y install build-essential libncurses-dev uuid-dev libglib2.0-dev libssl-dev libaio-dev libyajl-dev gettext git python-dev libfdt-dev libpixman-1-dev wget fakeroot lsb-release e2fslibs-dev liblzma-dev pkg-config zlib1g-dev iasl python-requests u-boot-tools

            rm -rf xen
            git clone -b staging git://xenbits.xen.org/xen.git

            arch=`dpkg-architecture -qDEB_HOST_ARCH`
            case "${arch}" in
              armhf)
                personality=linux32
                xenarch=arm32
                ;;
              arm64)
                xenarch=arm64
                ;;
              amd64)
                xenarch=x86_64
                ;;
            esac

            cd xen
            git log --oneline -n1
            $personality ./configure --prefix=/usr --with-system-qemu
            $personality make -j`getconf _NPROCESSORS_ONLN` debug=y dist-xen tools XEN_TARGET_ARCH=${xenarch}
            $personality make debball debug=y XEN_TARGET_ARCH=${xenarch}

            mkdir ${WORKSPACE}/out
            cp -L dist/xen*.deb ${WORKSPACE}/out/xen-${arch}.deb
            cp -L dist/install/boot/xen ${WORKSPACE}/out/xen-${arch}
            if [ ${arch} == arm64 ]
            then
                mkimage -A arm -C none -T kernel -a 0x0200000 -e 0x00200000 -n Xen -d ${WORKSPACE}/out/xen-arm64 ${WORKSPACE}/out/uXen-arm64
            fi
            cd ..

            # Publish
            test -d ${HOME}/bin || mkdir ${HOME}/bin
            wget https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py
            time python ${HOME}/bin/linaro-cp.py \
              --api_version 3 \
              out components/platform/xen/${BUILD_NUMBER}/${arch}
            python ${HOME}/bin/linaro-cp.py \
              --api_version 3 \
              --make-link \
              components/platform/xen/${BUILD_NUMBER}
    publishers:
        - archive:
            artifacts: 'out/*'
            latest-only: true
        - email:
            recipients: 'riku.voipio@linaro.org wookey@linaro.org Ian.Campbell@citrix.com fathi.boudra@linaro.org'