aboutsummaryrefslogtreecommitdiff
path: root/sid-armhf-rootfs.yaml
blob: 2884cc340d7a88ea6c74226c734810a9f03088da (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
- job:
    name: sid-armhf-rootfs
    project-type: matrix
    defaults: global
    properties:
        - authorization:
            anonymous:
                - job-read
                - job-extended-read
            linaro:
                - job-build
                - job-cancel
        - build-discarder:
            days-to-keep: 30
            num-to-keep: 30
            artifact-num-to-keep: 1
    parameters:
        - string:
            name: codename
            default: 'sid'
    disabled: false
    node: build
    child-workspace: .
    display-name: 'Linaro Debian armhf rootfs (Sid)'
    scm:
        - git:
            url: https://git.linaro.org/ci/ubuntu-build-service.git
            refspec: +refs/heads/master:refs/remotes/origin/master
            name: origin
            branches:
                - refs/heads/master
            skip-tag: true
            shallow-clone: true
            clean:
                after: true
            wipe-workspace: false
    axes:
        - axis:
            type: slave
            name: label
            values:
                - docker-jessie-armhf
        - axis:
            type: user-defined
            name: rootfs
            values:
                - alip
                - developer
                - installer
    wrappers:
        - timestamps
        - matrix-tie-parent:
            node: build
        - timeout:
            timeout: 120
    builders:
        - linaro-publish-token
        - shell: |
            #!/bin/bash

            set -ex

            trap cleanup_exit INT TERM EXIT

            cleanup_exit()
            {
              cd ${WORKSPACE}
              sudo umount builddir
            }

            sudo apt-get update
            sudo apt-get install -y --no-install-recommends cpio debootstrap live-build python-requests uuid-runtime
            sudo dpkg -i --force-all packages/live-build_3.0.5-1linaro1_all.deb

            dpkg -s qemu-user-static |grep '^Version'
            dpkg -s live-build |grep '^Version'

            test -d builddir || mkdir builddir
            sudo mount -t tmpfs -o size=8G tmpfs builddir
            cp -a ${codename}-armhf-${rootfs} builddir/
            cd builddir/${codename}-armhf-${rootfs}
            ./configure
            make

            cd ${WORKSPACE}
            sudo rm -rf out && mkdir out
            sudo mv builddir/${codename}-armhf-${rootfs}/linaro-${codename}-* out

            # Build information
            cat > out/HEADER.textile << EOF

            h4. Build description ( $JOB_NAME )

            * Job URL: "$JOB_URL":$JOB_URL
            * Build URL: "$BUILD_URL":$BUILD_URL
            * Commit: "$GIT_COMMIT":$GIT_URL/commit/?id=$GIT_COMMIT
            EOF

            # Publish
            test -d ${HOME}/bin || mkdir ${HOME}/bin
            wget -q 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 --link-latest out debian/images/${codename}/${rootfs}-armhf/${BUILD_NUMBER}
    publishers:
        - groovy-postbuild:
            script: |
                def build_number = manager.build.number
                def codename = manager.build.buildVariables.get('codename')
                def rootfs = manager.build.buildVariables.get('rootfs')
                def url = "http://snapshots.linaro.org/debian/images/${codename}/${rootfs}-armhf/${build_number}/"
                def desc = "&nbsp;<a href='${url}'>Build location<t/a>"

                if (manager.build.result == hudson.model.Result.SUCCESS) {
                  manager.build.setDescription(desc)
                }
        - email:
            recipients: 'fathi.boudra@linaro.org riku.voipio@linaro.org'