aboutsummaryrefslogtreecommitdiff
path: root/lt-qcom-linux-testimages.yaml
blob: bae5a58320d2fe8dfb674065fb116adc5f1d4294 (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
- job:
    name: lt-qcom-linux-testimages
    project-type: matrix
    defaults: global
    properties:
        - authorization:
            anonymous:
                - job-read
                - job-extended-read
                - job-workspace
            linaro-qualcomm-ci:
                - job-read
                - job-extended-read
                - job-build
                - job-cancel
        - build-discarder:
            days-to-keep: 30
            num-to-keep: 30
            artifact-num-to-keep: 1
    parameters:
        - string:
            name: IMAGES
            default: 'initramfs-tiny-image initramfs-test-image rpb-console-image-test rpb-desktop-image-test'
        - string:
            name: MANIFEST_URL
            default: 'https://github.com/96boards/oe-rpb-manifest.git'
        - string:
            name: MANIFEST_BRANCH_PREFIX
            default: 'qcom/'
        - string:
            name: MANIFEST_BRANCH
            default: 'master'
        - string:
            name: DISTRO
            default: 'rpb'
        - string:
            name: QCOM_USERSPACE_TOOLS
            default: 'fastrpc pd-mapper qrtr rmtfs tqftpserv'
        - string:
            name: BASE_URL
            default: 'https://snapshots.linaro.org/'
    disabled: false
    node: master
    display-name: 'Qualcomm LT User space for kernel testing'
    axes:
        - axis:
            type: user-defined
            name: MACHINE
            values:
                - 'qemuarm64'
                - 'qemuarm'
                - 'qcom-armv8a'
    execution-strategy:
        sequential: false
    wrappers:
        - timestamps
        - workspace-cleanup
        - credentials-binding:
            - text:
                credential-id: TUXSUITE_TOKEN
                variable: TUXSUITE_TOKEN
        - ssh-agent-credentials:
            users:
                - 'OE_COMMIT_BOT_KEY'
    builders:
        - shell: |
            #!/bin/bash
            echo "PUB_DEST=member-builds/qcomlt/testimages/$(echo ${MACHINE} | sed 's/qemu//')/${BUILD_NUMBER}" > pub_dest_parameters

            # ensure that we generate the right image type, by default qemu* only generates .ext4, we need .ext4.gz
            # enable mesa to test freedreno
            cat << EOF > local.conf.json
            {"local_conf" : [
            "IMAGE_FSTYPES:remove = 'ext4'",
            "IMAGE_FSTYPES:append = ' ext4.gz'",
            "PACKAGECONFIG:append:pn-mesa = 'freedreno xa'",
            "PREFERRED_PROVIDER_virtual/kernel = 'linux-dummy'"
            ]}
            EOF

            if [ "${MACHINE}" = "qcom-armv8a" ]; then
              # install firmware
              # remove kernel and modules to beign installed
              cat << EOF >> local.conf.json
              {"local_conf" : [
              "NO_RECOMMENDATIONS = ''",
              "MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS:remove = 'kernel-modules'",
              "RDEPENDS:packagegroup-rpb:remove = 'kernel-modules'",
              "PACKAGE_EXCLUDE:append = ' kernel-modules'"
              ]}
            EOF
            else
              # configure serial in rpb-console-image-test
              # add ext4 block size to 4096, boards with UFS storage needs it
              # add machine dependent qcom services to initramfs and rpb images
              cat << EOF >> local.conf.json
              {"local_conf" : [
              "SERIAL_CONSOLES = '115200;ttyMSM0'",
              "EXTRA_IMAGECMD_ext4 += ' -b 4096 '",
              "CORE_IMAGE_EXTRA_INSTALL += '${QCOM_USERSPACE_TOOLS}'",
              "PACKAGE_INSTALL:append = ' ${QCOM_USERSPACE_TOOLS}'"
              ]}
            EOF
            fi
        - inject:
            properties-file: pub_dest_parameters
        - linaro-publish-token
        - shell:
            !include-raw: rpb-openembedded/builders-tux.sh
        - inject:
            properties-file: parameters
        - shell:
            !include-raw: rpb-openembedded/publishers.sh
    publishers:
        - groovy-postbuild:
            script:
                !include-raw:
                  - rpb-openembedded/postbuild.groovy
        - email-ext:
            recipients: 'leonardo.sandoval@linaro.org nicolas.dechesne@linaro.org'
            failure: true
            still-failing: true
            matrix-trigger: only-parent