aboutsummaryrefslogtreecommitdiff
path: root/lt-qcom-openembedded-rpb-morty.yaml
blob: d56a6fe42a95d48e3b87cdedcabefca3557d3feb (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
119
120
121
122
123
124
125
126
127
128
129
- job:
    name: lt-qcom-openembedded-rpb-morty
    project-type: matrix
    defaults: global
    logrotate:
        daysToKeep: 30
        numToKeep: 30
        artifactNumToKeep: 1
    properties:
        - authorization:
            anonymous:
                - job-read
                - job-extended-read
                - job-workspace
            linaro-landing-team-qualcomm-personnel:
                - job-read
                - job-extended-read
                - job-build
                - job-cancel
    parameters:
        - string:
            name: IMAGES
            default: 'rpb-console-image rpb-console-image-lava'
        - string:
            name: MANIFEST_BRANCH_PREFIX
            default: 'qcom/'
        - string:
            name: MANIFEST_BRANCH
            default: 'morty'
        - string:
            name: BASE_URL
            default: 'https://builds.96boards.org/'
        - string:
            name: BUNDLE_STREAM_NAME
            default: '/public/team/linaro/lt-qualcomm-oe-morty/'
        - string:
            name: LAVA_SERVER
            default: 'validation.linaro.org/RPC2/'
    disabled: false
    node: master
    display-name: 'Qualcomm OpenEmbedded RPB (morty)'
    axes:
        - axis:
            type: user-defined
            name: MACHINE
            values:
                - 'dragonboard-410c'
                - 'dragonboard-820c'
                - 'sd-600eval'
        - axis:
            type: user-defined
            name: DISTRO
            values:
                - rpb
                - rpb-wayland
        - axis:
            type: slave
            name: label
            values:
                - docker-jessie-amd64
    execution-strategy:
        sequential: false
    wrappers:
        - timestamps
        - ssh-agent-credentials:
            users:
                - 'OE_COMMIT_BOT_KEY'
    builders:
        - shell: |
            #!/bin/bash

            # some machine names we use on 96boards are slightly different
            case "${MACHINE}" in
              dragonboard-410c)
                MACHINE=dragonboard410c
                ;;
              dragonboard-820c)
                MACHINE=dragonboard820c
                ;;
            esac

            echo "PUB_DEST=snapshots/${MACHINE}/linaro/openembedded/${MANIFEST_BRANCH}/${BUILD_NUMBER}/${DISTRO}" > pub_dest_parameters
        - inject:
            properties-file: pub_dest_parameters
        - shell:
            !include-raw: rpb-openembedded/builders.sh
        - inject:
            properties-file: post_build_lava_parameters
        - linaro-publish-token:
            host: builds.96boards.org
        - shell:
            !include-raw: rpb-openembedded/publishers.sh
        - shell: |
            case "${MACHINE}" in
              dragonboard-410c)
                export DEVICE_TYPE=apq8016-sbc
                ;;
              *)
                echo "Skip DEVICE_TYPE for ${MACHINE}"
                ;;
            esac

            rm -rf configs lci-build-tools
            git clone --depth 1 http://git.linaro.org/ci/lci-build-tools.git
            git clone --depth 1 http://git.linaro.org/ci/job/configs.git

            # Handle LAVA v1 (json)/v2 (yaml) test definitions
            case "${DEVICE_TYPE}" in
              apq8016-sbc)
                ./lci-build-tools/yaml-to-json.py configs/lt-qcom-openembedded-rpb/lava-job-definitions/${DEVICE_TYPE}/template.yaml \
                > custom_lava_job_definition.json

                cat << EOF > post_build_lava_parameters
            DEVICE_TYPE=${DEVICE_TYPE}
            BUNDLE_STREAM_NAME=${BUNDLE_STREAM_NAME}
            CUSTOM_JSON_URL=${JOB_URL}/ws/custom_lava_job_definition.json
            LAVA_SERVER=${LAVA_SERVER}
            EOF
                ;;
            esac
        - trigger-builds:
            - project: 'post-build-lava'
              property-file: post_build_lava_parameters
              block: true
    publishers:
        - email-ext:
            recipients: 'fathi.boudra@linaro.org, nicolas.dechesne@linaro.org, anibal.limon@linaro.org'
            always: true
            matrix-trigger: only-parent