aboutsummaryrefslogtreecommitdiff
path: root/lt-qcom-linux-testimages-desktop.yaml
blob: c4c3eb62081b891338ade3abce16cf7bf09c0151 (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
- job:
    name: lt-qcom-linux-testimages-desktop
    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-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 Desktop kernel testing'
    axes:
        - axis:
            type: user-defined
            name: MACHINE
            values:
                - 'qemuarm64'
                - 'qemuarm'
                - 'qcom-armv8a'
        - axis:
            type: slave
            name: label
            values:
                - docker-buster-amd64
    execution-strategy:
        sequential: false
    wrappers:
        - timestamps
        - ssh-agent-credentials:
            users:
                - 'OE_COMMIT_BOT_KEY'
    builders:
        - shell: |
            #!/bin/bash
            echo "PUB_DEST=member-builds/qcomlt/testimages-desktop/$(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
            echo "IMAGE_FSTYPES_remove = \"ext4\"" > auto.conf
            echo "IMAGE_FSTYPES_append = \" ext4.gz\"" >> auto.conf
            # enable mesa-dev to test freedreno using deqp
            echo "MESA_DEV = \"1\"" >> auto.conf
            echo "CORE_IMAGE_EXTRA_INSTALL += \"mesa-ci\"" >> auto.conf 
            echo "PACKAGECONFIG_append_pn-mesa = \"freedreno xa\"" >> auto.conf

            if [ "${MACHINE}" = "qcom-armv8a" ]; then
              # install firmware
              echo "NO_RECOMMENDATIONS = \"\"" >> auto.conf
              # remove kernel and modules to beign installed
              echo "MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS_remove = \"kernel-modules\"" >> auto.conf
              echo "RDEPENDS_packagegroup-rpb_remove = \"kernel-modules\"" >> auto.conf
              echo "PACKAGE_EXCLUDE_append = \" kernel*\"" >> auto.conf
            else
              # configure serial in rpb-desktop-image-test
              echo "SERIAL_CONSOLES = \"115200;ttyMSM0\"" >> auto.conf
              # add ext4 block size to 4096, boards with UFS storage needs it
              echo "EXTRA_IMAGECMD_ext4 += \" -b 4096 \"" >> auto.conf

              # add machine dependent qcom services to initramfs and rpb images
              echo "CORE_IMAGE_EXTRA_INSTALL += \"${QCOM_USERSPACE_TOOLS}\"" >> auto.conf
              echo "PACKAGE_INSTALL_append = \" ${QCOM_USERSPACE_TOOLS}\"" >> auto.conf
            fi
        - inject:
            properties-file: pub_dest_parameters
        - shell:
            !include-raw: rpb-openembedded/builders.sh
        - inject:
            properties-file: post_build_lava_parameters
        - linaro-publish-token
        - shell:
            !include-raw: rpb-openembedded/publishers.sh
    publishers:
        - groovy-postbuild:
            script:
                !include-raw:
                  - rpb-openembedded/postbuild.groovy
        - email-ext:
            recipients: 'nicolas.dechesne@linaro.org, anibal.limon@linaro.org'
            failure: true
            still-failing: true
            matrix-trigger: only-parent